Je reçois l'erreur ci-dessus avec Rails 3.1.1 et Ruby 1.9.2. J'ai passé la dernière heure à la recherche et les principales choses que j'ai trouvé étaient:Devise: méthode non définie `user_signed_in? ' pour ApplicationController: Classe
clear_helpers
dans ApplicationController peut provoquer les aides de ne pas charger. Mon code n'utilise pas cela et je ne crois pas que les gemmes que j'ai installées soient non plus.Manquant
devise_for
dans routes.rb. J'aidevise_for :users
Missing 'database_authenticatable' dans mon modèle Utilisateurs. J'ai dans mon users.rb:
concevoir: database_authenticatable,: enregistrable, : récupérable,: rememberable,: traçable,: validable
Mon comportement correspond exactement à ce qui est décrit dans this email thread sauf
signed_in? :user
ne fonctionne pas pour moi non plus. Cependant,Devise.mappings
montre le mappage de l'utilisateur.
Des idées sur ce qui pourrait être faux? Même un hack pour current_user m'aiderait grandement car je dois avoir des fonctionnalités fonctionnant ASAP.
C'est en fait user.rb et c'était une faute de frappe de ma part. Bon oeil, cependant. Cela fonctionnait réellement et j'appelais 'current_user' et' user_signed_in? 'Dans le mauvais contexte. –
Que voulez-vous dire par mauvais contexte? – Ken
Voir ma réponse ci-dessus. Je l'appelais dans la déclaration d'un contrôleur au lieu de dans une instance d'un contrôleur. –