Как показать операторы SQL в консоли Rails, такие как WEBrick?

Rails WEBrick показывает необработанные операторы SQL для любых действий ActiveRecord. Как включить это в консоли?

Ответы на вопрос(3)

console.rb location /lib/rails/console.rb

Look for ActiveRecord::Base.connection.instance_variable_set

Change it to following

ActiveRecord::Base.connection.instance_variable_set :@logger, Logger.new(STDOUT)

ActiveRecord внутренние и использование переменных экземпляра, чтобы просто получить доступ кconfig объект, который дает вам Rails. Поместите это внутриconfig/application.rb:

config.logger = Logger.new(STDOUT) if($0 == 'irb' || $0 == 'script/rails')
 09 дек. 2013 г., 18:04
Это работает на Rails 2
 23 окт. 2013 г., 01:19
Кажется, не работает (Rails 4.0 здесь)
Решение Вопроса

вы можете сделать это следующим образом.

Откройте консоль рельсов:

ActiveRecord::Base.connection.instance_variable_set :@logger, Logger.new(STDOUT)

Посмотрите на эту ссылку:

http://rubyquicktips.com/post/292826666/display-activerecord-generated-sql-queries-in-the

 31 июл. 2013 г., 10:52
Вы хотите объединить это сif $0 == 'script/server' так что выходные данные не загрязняют тесты или любые грабли, например.

Ваш ответ на вопрос