2012-05-24 9 views

Respuesta

12

Para hacer esto, tiene que habilitar el registrador, puede hacerlo de la siguiente manera.

Abra la consola de rieles:

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

Echa un vistazo a este enlace:

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

+0

Usted querrá combinar esto con 'si $ 0 == 'script/server'' modo que la salida no contamina las pruebas o cualquier tarea rastrillo para exmaple. – Mikey

1
  • Ir a su ubicación console.rb/lib/rails/console.rb

  • Busque ActiveRecord::Base.connection.instance_variable_set

  • cambiarlo a continuación

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

3

de una manera similar para lograr esto sin tener que recurrir a la excavación en ActiveRecord internos y el uso de variables de instancia es simplemente acceder al objeto config que Rails te da. Coloque esta dentro config/application.rb:

config.logger = Logger.new(STDOUT) if($0 == 'irb' || $0 == 'script/rails') 
+0

Parece que no funciona (Rails 4.0 aquí) –

+0

Esto funciona en Rails 2 – Batkins

Cuestiones relacionadas