Rails WEBrick显示任何ActiveRecord活动的原始SQL语句。如何在控制台中启用它?
答案 0 :(得分:12)
要执行此操作,您必须启用记录器,您可以按如下方式执行此操作。
打开rails控制台:
ActiveRecord::Base.connection.instance_variable_set :@logger, Logger.new(STDOUT)
看一下这个链接:
http://rubyquicktips.com/post/292826666/display-activerecord-generated-sql-queries-in-the
答案 1 :(得分:3)
实现这一目的的一种类似方法,无需借助于挖掘ActiveRecord
内部结构并使用实例变量,只需访问Rails为您提供的config
对象。将其放在config/application.rb
:
config.logger = Logger.new(STDOUT) if($0 == 'irb' || $0 == 'script/rails')
答案 2 :(得分:1)
转到console.rb
位置/lib/rails/console.rb
寻找ActiveRecord::Base.connection.instance_variable_set
将其更改为以下
ActiveRecord::Base.connection.instance_variable_set :@logger, Logger.new(STDOUT)