Hola lista,
Tengo una app que funciona con Rails 2.1.1 en producción. Estoy haciendo
un rewrite bastante importante, y la nueva versión quisiera que funcione
sobre 2.2.2 (sobretodo por el thread safe y el multilenguaje).
En entorno “development” funciona perfectamente. Pero al lanzarla en
entorno de produccion me escupe algunos errores. He ido depurando los
que he podido, pero me cuentro con este y no se por donde cogerlo:
ivan@devel:~/repo$ RAILS_ENV=production ruby script/server
[… mongrel arrancando …]
/usr/lib/ruby/gems/1.8/gems/activesupport-2.2.2/lib/active_support/
dependencies.rb:102:in `const_missing’: uninitialized constant
Property::CONFIG (NameError)
[… algunas lineas de backtrace …]
Entre las lineas de backtrace se hace referencia al modelo
“Property” (property.rb). Este modelo entre otras cosas tiene una
indexacion a thinking_sphinx, y en esa indexación hay esta linea que
es la conflictiva:
where ‘status_id=’ + CONFIG[‘estado’]
Es decir, parece que a Rails no le gusta la constante CONFIG. Esta
sale de cargar un fichero YAML con algunos parametros de configuracion.
El YAML lo cargo en el “environment.rb”:
inclusion de fichero YAML
require ‘yaml’
CONFIG = YAML.load(File.open("#{RAILS_ROOT}/config/main.yml"))
He pensado que quiza “CONFIG” podia ser una keyword reservada (no
tiene por que, pero bueno), asi que he cambiado la sintaxis a
CONFIGURACION, pero el problema persiste.
Como decía al principio, la aplicacion funciona perfectamente en:
Rails 2.1.1) development y produccion
Rails 2.2.2) development
Que estoy haciendo mal?
Muchisimas gracias de antemano, salu2!
Ivan
–
Real_men_dont_need_spacebars