Menggantung Log Query SQL Buat sementara waktu dalam Rails Console
Apabila menyahpepijat dalam konsol Rails, pengelogan pertanyaan SQL yang berlebihan boleh mengacaukan output, menjadikannya sukar dibaca. Nasib baik, terdapat kaedah untuk melumpuhkan sementara dan mendayakan semula pengelogan.
Untuk mematikan pengelogan pertanyaan SQL:
old_logger = ActiveRecord::Base.logger ActiveRecord::Base.logger = nil
Ini memberikan pengelog semasa kepada pembolehubah sementara, kemudian menetapkan pengelog kepada tiada, menyenyapkan semua pertanyaan SQL dengan berkesan.
Untuk mendayakan semula pengelogan:
ActiveRecord::Base.logger = old_logger
Ini memulihkan pembalak kepada nilai sebelumnya, meneruskan pengelogan pertanyaan SQL.
Jika menetapkan pembalak kepada nil menyebabkan ralat, anda boleh menetapkan tahapnya kepada 1 (Logger ::INFO):
ActiveRecord::Base.logger.level = 1 # or Logger::INFO
Ini secara berkesan menapis semua pertanyaan SQL daripada output, sambil masih membenarkan amaran dan ralat mesej untuk dilog.
Atas ialah kandungan terperinci Bagaimana untuk Melumpuhkan Sementara dan Mendayakan Semula Pengelogan Pertanyaan SQL dalam Konsol Rails?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!