Primera llamada a una, Segunda llamada controlador, se define constante, “constante sin inicializar Oauth”?

StackOverflow https://stackoverflow.com/questions/2796465

Pregunta

Estoy intentando agarrar la gema OAuth para el trabajo con los carriles 3 y estoy corriendo en este problema raro ... (independiente de la gema, creo que me he encontrado con esto una vez antes)

I tiene un controlador llamado "OauthTestController", y un modelo llamado "ConsumerToken". Las miradas modelo como éste.

require 'oauth/models/consumers/token'
class ConsumerToken < ActiveRecord::Base
  include Oauth::Models::Consumers::Token
end

Cuando voy a "/ oauth_test / gorjeo", se carga el módulo Oauth::Models::Consumers::Token y yo soy capaz de conectarse a twitter ningún problema. Pero la segunda vez que lo intento (simplemente actualizar la URL /oauth_test/twitter), me da este error:

NameError (uninitialized constant Oauth):
  app/models/consumer_token.rb:4
  app/models/twitter_token.rb:2
  app/controllers/oauth_test_controller.rb:66:in `load_consumer'

¿Por qué? Tiene algo que ver con las rutas de carga o estar en el modo de desarrollo, tal vez?

¿Fue útil?

Solución

Trate de usar require_or_load en lugar de requerir. Que las fuerzas de carga completa cada vez que en el desarrollo y en ocasiones puede ayudar con este tipo de problema.

Otros consejos

Sí, es algo que ver con estar en el modo de desarrollo. Configuración config.cache_classes = true en su llegar development.rb es todo trabajando (pero es un dolor en el culo)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top