Me estoy acostumbrando a la consola de Rails, y me resulta útil para probar rápidamente los métodos en mis clases. Sé que puedo hacer cambios a mis modelos, a continuación,¿Cuáles son los motivos de "recarga"? no siempre parece funcionar en la consola de Rails?
> reload!
para agarrar esos cambios, pero a veces me parece que no parece para recargar mi último código. ¿Rails guarda el código de caché en alguna parte?
En un ejemplo muy simple de pseudo, que puede tener mal código en la línea 100:
100: u = User.alll
y en la consola de Rails, cuando corro este método, podría obtener un error similar al siguiente:
NoMethodError: undefined method `alll' for User:Class ... on line 100
a continuación, modificar mi código, corregir el error
100: u = User.all
vuelva a cargar:
> reload!
y luego, al llamar al método de esta clase que tiene el código correcto, todavía va a decir
NoMethodError: undefined method `alll' for User:Class ... on line 100
Cuando claridad, se fija el error y la línea en cuestión no es ni siquiera en la línea 100 más. ¿Hay alguna manera de forzar/restaurar la "recarga"? ¿mando?
Sí, este fue exactamente el problema. Las instancias que creas no "vuelven a cargar". Después de volver a cargar y volver a crear instancias, las cosas funcionan bien cada vez. Gracias @flambino – jbnunn