2010-08-15 12 views
15

¿Alguien sabe cómo depurar en los rieles en el modelo? Tengo un método que ahora está funcionando e intenté verificar el valor de la variable entre mecanografiar logger.debug val_name que funciona en los controladores pero no en los modelos ¿alguien sabe por qué? El modelo no se hereda de Active Record si puede ser el problema. ¿Hay alguna forma de depurarlo?¿Cómo depurar en el modelo?

Respuesta

7

Puede hacer "puts" dentro de las llamadas a su método modelo y se emitirá. Puedes verlo en los registros de los rieles o en la salida de la consola.

+0

esto fue muy útil y fácil, me pregunto por qué no lo intenté :) – Dennis

+0

También puede hacer pruebas de unidad para su modelo. –

3

ya que su modelo no es un ActiveRecord que no tiene el método registrador de mezclado en

puedes añadir como esto (probablemente otras mejores maneras de hacerlo así)

class YourModelThatIsNotActiveRecord 
    def logger 
     RAILS_DEFAULT_LOGGER 
    end 
end 

una montón de gran información aquí también - http://guides.rubyonrails.org/debugging_rails_applications.html

22

Otra forma de registro desde cualquier lugar de su aplicación:

Rails.logger.debug "Show this message!" 

Esto siempre será la salida al archivo log/development.log.