Dans mon application, j'ai utilisé Ruby 1.9.2 et Rails 3.0.3 et j'ai également installé Devise gem.Le problème commence lorsque je lance le serveur Webrick.
/home/app/Workspace/project/Library_Management/Library_Management/config/initializers/devise.rb:3:in `<top (required)>': uninitialized constant Devise (NameError)
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.0.9/lib/Rails/engine.rb:201:in `block (2 levels) in <class:Engine>'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.0.9/lib/Rails/engine.rb:200:in `each'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.0.9/lib/Rails/engine.rb:200:in `block in <class:Engine>'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.0.9/lib/Rails/initializable.rb:25:in `instance_exec'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.0.9/lib/Rails/initializable.rb:25:in `run'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.0.9/lib/Rails/initializable.rb:50:in `block in run_initializers'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.0.9/lib/Rails/initializable.rb:49:in `each'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.0.9/lib/Rails/initializable.rb:49:in `run_initializers'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.0.9/lib/Rails/application.rb:134:in `initialize!'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.0.9/lib/Rails/application.rb:77:in `method_missing'
from /home/app/Workspace/project/Library_Management/Library_Management/config/environment.rb:5:in `<top (required)>'
from /home/app/.rvm/rubies/Ruby-1.9.2-p180/lib/Ruby/site_Ruby/1.9.1/rubygems/custom_require.rb:54:in `require'
from /home/app/.rvm/rubies/Ruby-1.9.2-p180/lib/Ruby/site_Ruby/1.9.1/rubygems/custom_require.rb:54:in `require'
from /home/app/Workspace/project/Library_Management/Library_Management/config.ru:3:in `block in <main>'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/rack-1.2.3/lib/rack/builder.rb:46:in `instance_eval'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/rack-1.2.3/lib/rack/builder.rb:46:in `initialize'
from /home/app/Workspace/project/Library_Management/Library_Management/config.ru:1:in `new'
from /home/app/Workspace/project/Library_Management/Library_Management/config.ru:1:in `<main>'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/rack-1.2.3/lib/rack/builder.rb:35:in `eval'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/rack-1.2.3/lib/rack/builder.rb:35:in `parse_file'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/rack-1.2.3/lib/rack/server.rb:162:in `app'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/rack-1.2.3/lib/rack/server.rb:253:in `wrapped_app'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/rack-1.2.3/lib/rack/server.rb:204:in `start'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.0.9/lib/Rails/commands/server.rb:65:in `start'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.0.9/lib/Rails/commands.rb:30:in `block in <top (required)>'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.0.9/lib/Rails/commands.rb:27:in `tap'
from /home/app/.rvm/gems/Ruby-1.9.2-p180/gems/railties-3.0.9/lib/Rails/commands.rb:27:in `<top (required)>'
from /home/app/.rvm/rubies/Ruby-1.9.2-p180/lib/Ruby/site_Ruby/1.9.1/rubygems/custom_require.rb:58:in `require'
from /home/app/.rvm/rubies/Ruby-1.9.2-p180/lib/Ruby/site_Ruby/1.9.1/rubygems/custom_require.rb:58:in `rescue in require'
from /home/app/.rvm/rubies/Ruby-1.9.2-p180/lib/Ruby/site_Ruby/1.9.1/rubygems/custom_require.rb:35:in `require'
Merci
Si vous écrivez un moteur qui a sa propre configuration, ajoutez simplement
require 'devise'
sur le début de l’initialiseur. Dans mon cas, je n'avais aucune exigence de conception dans l'application :)
À votre santé
Vérifiez votre config/application.rb, vous devez ajouter besoin de 'carte' et tout ira bien.
Assurez-vous que vous avez répertorié Devise dans votre Gemfile et exécutez bundle install
.
J'ai eu une telle erreur quand j'ai eu un contrôleur de schéma personnalisé pour remplacer la "nouvelle" méthode pour faire des choses personnalisées, et j'ai oublié d'utiliser "super"
Avez-vous un contrôleur personnalisé?
J'ai eu un problème similaire et j'ai trouvé ceci https://github.com/plataformatec/devise
Il dit que vous devez faire
Rails generate devise:install
Après "Getting Started" sur cette page, je suis parti
Je viens d'avoir ce problème, c'est parce que j'ai généré un modèle de vue par erreur et je ne l'ai pas supprimé de mes routes.rb
J'ai dû ajouter require 'devise'
dans le fichier spec/spec_helper.rb et cette erreur a disparu.
si vous n'utilisez plus de gemme de carte alors retirez
gem 'devise'
de gemfile et supprimer
config/initializers/devise.rb
assurez-vous également que le produit n'est utilisé nulle part
Dans votre config/application.rb, ajoutez require 'yaml'
. Ça marche pour moi. Essayez
J'ai ajouté quelques colonnes après l'installation de Devise et des validations dans mon modèle utilisateur. D'après le message d'erreur, il semble que Rails ne puisse pas trouver la bibliothèque essentielle, donc il ne peut pas trouver Devise. Peut-être vérifiez-vous la page Wiki de Github invente et assurez-vous que toutes les dépendances sont satisfaites?
J'espère que ça aide!