как распечатать исполняемый sql из Active record в rails 2 - PullRequest
1 голос
/ 27 декабря 2010

Я хотел бы напечатать в лог или консоль исполняемый sql. Где я могу сделать некоторые настройки? В спящем режиме это возможно в конфигурационном файле: я думаю, что здесь тоже должно быть что-то подобное.

У меня есть часть кода, подобная этой:

myresult = MyActiveRecordClass.find(:all, :select => "mytable1.*, mytable2.field1", :joins => :mytable2, :conditions => "somefield= #{somefield}", :order => "another_field desc", :offset => offset, :limit => limit)

Это более простой случай, чтобы перевести вручную, но я хотел бы иметь все нативные sql в консоли или в файле. Это может быть полезно при поиске

1 Ответ

1 голос
/ 27 декабря 2010

Rails уже отображает SQL в журнале разработки и на консоли (на уровне debug log - поэтому убедитесь, что регистратор может отображать debug сообщений журнала).

Чтобы также отображать, где висходный код SQL был вызван из:

Rails 2: query_trace плагин

Rails 3: Трассировка Rails 3 SQL-запросов (на основе query_trace,но работает на Rails 3, потому что query_trace в настоящее время не работает на Rails 3)

...