2010-09-13 4 views
0

J'utilise l'AuthLogic gem dans l'application mes rails. Il fonctionne très bien dans l'environnement de développement, mais quand je passe à l'environnement de production, je reçois une erreur empêchant l'application de départ:Problème Authlogic en mode production: variable locale non définie ou méthode `acts_as_authentic 'pour le nom de la classe

/home/.../rails/xxx/app/models/book.rb:2: undefined local variable or method `acts_as_authentic' for Book:Class (NameError) 
     from /usr/lib64/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 
     from /usr/lib64/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require' 
     from /home/.../ruby/gems/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:158:in `require' 
     from /home/.../ruby/gems/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:265:in `require_or_load' 
     from /home/.../ruby/gems/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:224:in `depend_on' 
     from /home/.../ruby/gems/gems/activesupport-2.3.8/lib/active_support/dependencies.rb:136:in `require_dependency' 
     from /home/.../ruby/gems/gems/rails-2.3.8/lib/initializer.rb:414:in `load_application_classes' 
     from /home/.../ruby/gems/gems/rails-2.3.8/lib/initializer.rb:413:in `each' 
     from /home/.../ruby/gems/gems/rails-2.3.8/lib/initializer.rb:413:in `load_application_classes' 
     from /home/.../ruby/gems/gems/rails-2.3.8/lib/initializer.rb:411:in `each' 
     from /home/.../ruby/gems/gems/rails-2.3.8/lib/initializer.rb:411:in `load_application_classes' 
     from /home/.../ruby/gems/gems/rails-2.3.8/lib/initializer.rb:197:in `process' 
     from /home/.../ruby/gems/gems/rails-2.3.8/lib/initializer.rb:113:in `send' 
     from /home/.../ruby/gems/gems/rails-2.3.8/lib/initializer.rb:113:in `run' 
     from ./public/../config/environment.rb:28 
     from ./public/dispatch.fcgi:21:in `require' 
     from ./public/dispatch.fcgi:21 

J'utilise authlogic (2.1.5) et les rails (2.3.8)

L'erreur se produit uniquement dans l'environnement de production, même si mes DB de production et de développement sont identiques. Même problème sur localhost que sur le serveur web. J'apprécierais vraiment toute aide que je pourrais obtenir avec ceci. S'il vous plaît laissez-moi savoir si plus d'informations sont nécessaires. Merci beaucoup!

Édité le 15 septembre: Merci pour les réponses. Il est gelé dans mon application. Je ne suis pas sûr comment vérifier qu'il est installé de manière à être disponible pour l'utilisateur que je cours mon serveur Web. Voici la sortie des pierres précieuses de râteau RAILS_ENV = production:

rake gems RAILS_ENV=production 
(in /Users/my_user_name/Sites/my_app_name) 
- [F] authlogic 
    - [R] activesupport 
- [F] acts-as-taggable-on = 2.0.0.rc1 
- [R] rails 
- [F] will_paginate 
- [I] nokogiri 

I = Installed 
F = Frozen 
R = Framework (loaded before rails starts) 

Edité le 17 septembre: J'ai essayé dégeler les pierres précieuses et obtenu la même erreur.

+0

Quelle est la sortie de 'rake gems RAILS_ENV = production'? – zetetic

Répondre

0

La gem authlogic est-elle installée dans votre environnement de production ou figée dans votre application? En outre, est-il installé de manière à être disponible pour l'utilisateur que vous utilisez votre serveur Web? (Toutes nos excuses si vous avez déjà vérifié cela mais il est logique de commencer au début)

Enfin, il convient de vérifier que votre appel config.gem "authlogic" dans environment.rb est avant toute utilisation de votre classe Book qui semble être causant le problème.

Questions connexes