Me gustaría verificar algunas consultas generadas por ActiveRecord, pero no necesito ejecutarlas realmente. ¿Hay alguna manera de llegar a la consulta antes de que arroje su resultado?¿Cómo puedo ver el SQL ActiveRecord genera?
Respuesta
Ambos artículos deberían ayudarlo a hacer lo que quiera.
http://weblog.jamisbuck.org/2007/1/8/watching-activerecord-do-it-s-thing
http://weblog.jamisbuck.org/2007/1/31/more-on-watching-activerecord
Aquellos aún ejecutan las consultas, pero resuelven el problema que realmente buscaba, ya que las consultas (a) son idempotentes y (b) no tardan demasiado. –
Creo que es enterrado en:
construct_finder_sql,
http://groups.google.com/group/rubyonrails-talk/browse_frm/thread/38c492e3939dd9bf/?pli=1
tail-f log/development.log
Obras en la configuración por defecto o cuando tu eres et su nivel de registrador a DEPURAR.
El artículo de Jamis está desactualizado, o al menos no funciona mi aplicación Rails (posiblemente debido a alguna otra razón con una aplicación de 30,000 líneas de 3 años). Sin embargo, esto funciona en una consola en cualquier momento:
ActiveRecord::Base.connection.instance_variable_set :@logger, Logger.new(STDOUT)
- 1. ¿Cómo puedo ver el código que HotSpot genera después de la optimización?
- 2. cómo puedo ver el plan de ejecución
- 3. ¿Cómo ver SQL generado desde Entity Framework?
- 4. ¿Cómo puedo ver un preparado Declaración DOP SQL
- 5. SQL UNION con Rails ActiveRecord
- 6. ActiveRecord: ¿Puedo copiar asociaciones?
- 7. ActiveRecord: ¿Cómo puedo clonar las asociaciones anidadas?
- 8. registro de LINQ a SQL genera SQL para Nlog
- 9. ¿Cómo puedo usar "ver" GDB?
- 10. ¿Cómo puedo ver un NSError?
- 11. Ver SQL preparado con sp_prepare
- 12. Ver el SQL subyacente en Spring JdbcTemplate?
- 13. ActiveRecord IS NOT NULL buscador sql
- 14. ¿Cómo puedo ver el contenido de los campos de datos binarios sql?
- 15. ¿Cómo ver el SQL ejecutado por LINQ en Visual Studio?
- 16. ActiveModel - Ver - ¿Controlador en Rails en lugar de ActiveRecord?
- 17. ¿Cómo puedo hacer una declaración 'O' en ActiveRecord?
- 18. ¿Cómo puedo obtener una declaración SQL creada por ActiveRecord # find sin realmente ejecutarla?
- 19. ¿Por qué el marco Entity genera este SQL?
- 20. Extraiga el sql generado para crear/guardar un modelo ActiveRecord
- 21. Cómo usar ActiveRecord caché de consultas con SQL personalizado
- 22. Conexión a SQL Server con ActiveRecord
- 23. Desactivar sql detallado/ActiveRecord para Rails 3.1.1
- 24. Active Record has_many genera sql con clave foránea IS NULL
- 25. ¿Dónde puedo ver el C++ estándar
- 26. ¿Puedo ver un BufferedReader?
- 27. Entity Framework y SQL Server Ver
- 28. ¿Cómo puedo ver un archivo comprimido contenido
- 29. cómo puedo ver los datos en el archivo mdf
- 30. ¿Cómo puedo ver el error o advertencia completo en Xcode?
Tenga en cuenta que con los carriles 3 +, que sólo puede virar en un 'to_sql' a la pregunta:' Posts.where (: algo => foo) .to_sql' – DGM