2012-05-24 7 views

risposta

12

Per fare ciò è necessario abilitare il registratore, è possibile farlo come segue.

Aprire la console di rotaie:

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

Date un'occhiata a questo link:

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

+0

Ti consigliamo di combinare questo con 'se $ 0 == 'script/server'' modo che l'uscita non inquina le prove o qualsiasi attività di rake per exmaple. – Mikey

1
  • Vai alla vostra posizione console.rb/lib/rails/console.rb

  • Cercare ActiveRecord::Base.connection.instance_variable_set

  • Cambio al seguente

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

3

modo simile a raggiungere questo obiettivo senza ricorrere a scavare in ActiveRecord interni e l'utilizzo di variabili di istanza è quello di accedere solo all'oggetto config che Rails ti dà. Posizionare questo all'interno config/application.rb:

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

Sembra non funzionare (Rails 4.0 qui) –

+0

Funziona su Rails 2 – Batkins

Problemi correlati