Hola hola
estoy haciendo cacheo de mi aplicación,
he seguido estas guÃas
http://railsenvy.com/2007/2/28/rails-caching-tutorial
el caso es que cuando creo el sweeper y añado las configuraciones
en development.rb (para que cachee), en environment.rb (para que añada
el directorio de sweepers)
y en el controlador lo cache_sweeper para que lo corra obtengo un
bonito:
NameError
uninitialized constant UserSweeper
¿Alguna idea donde más buscar?
¿puede que sea cosa de Edge rails?
thnx
marze
en development.rb (para que cachee), en environment.rb (para que añada
el directorio de sweepers)
NameError
uninitialized constant UserSweeper
Tiene pinta de que no está encontrando la clase o bien porque no has
añadido bien el directorio, o bien porque el nombre del fichero no se
corresponde con el de la clase y rails no es capaz de autocargarlo.
Si estás seguro de que tu fichero se llama user_sweeper.rb y de que
está en un directorio incluÃdo en el load_path y en el
Dependencies.load_paths, no deberÃa darte ese error.
Puedes hacer alguna prueba rápida. Ãbrete un script/console y escribe
directamente
UserSweeper
Si le das a enter y Rails es capaz de autocargar la clase, entonces
deberÃa contestarte “UserSweeper”. Si no lo hace, es que no la
encuentra. En ese caso prueba a hacer un
y Dependencies.load_paths.sort
En ese listado deberÃa aparecer el directorio donde está el fichero
user_sweeper.rb
Si no aparece el directorio ahÃ, es que no está incluÃdo en las
Dependencies que se cargan de forma automática. Si añades al load_path
mediante el objeto config el path del directorio, deberÃa añadirse
automáticamente a las Dependencies… pero si lo añades directamente a
$LOAD_PATH sin pasar por el objeto config, entonces tienes que añadirlo
manualmente a Dependencies.load_paths
Resumiendo:
asegúrate de que tu clase UserSweeper está definida en un fichero
user_sweeper.rb que está dentro de un directorio que has añadido al
load_path mediante la instrucción config.load_path += EL_PATH
En cuanto consigas que en la consola te encuentre la clase, el
controller deberÃa de ser capaz de encontrarla también.
saludos,
javier ramÃrez
El 18/05/2008, a las 2:12, javier ramirez
escribió:
y Dependencies.load_paths.sort
woah! esa es muy buena!
ya lo tengo solucionando, algo pasaba con la versión de Rails de mi
vendor
últimamente cada vez que me sale un uninitialized lo soluciono
actualizando, no tiene sentido y seguro que es una coincidencia
muchas gracias, ahora puedo saber exactamente si lo encuentra
marze