J'essaie de rendre la vue de connexion pour le gem du crise, mais je reçois une erreur, ci-dessous est le code que j'ai actuellement:
Ceci est mon et mon et Dans ma disposition de l'application: p> i obtenir l'erreur suivante dans le Enfin, dans mon contrôleur d'application, j'ai les suivants: P> Vues / utilisateurs / partagés / _links.html.erb : p> config / routtes.rb code>: p> _links.html.erb code> partielle: p> before_filter :resource_name
def resource_name
if user_signed_in?
current_user.name
else
:user
end
end
end
3 Réponses :
Si vous souhaitez avoir peu d'extraits de connexion / sortie dans chaque page, vous voudrez peut-être envisager d'écrire ces liens vous-même. Par exemple, si votre objet que vous utilisez Devise pour est le Resource_Name code> est défini dans les contrôleurs générés par le congé. Je ne pense pas que vous puissiez inclure ces liens partagés dans la mise en page de l'application, je pense qu'ils sont destinés à être utilisés sur les formulaires de congise (enregistrement, sessions, mots de passe, confirmations, etc.), qui sont rendus par des contrôleurs de congise. utilisateur code>, vous pouvez écrire ceci: p> Resource_Name code> est juste l'abstraction du congé pour la ressource que vous utilisez. Je m'attends à ce que si vous faites ce lien, vous savez quel em> de vos objets authentifiés que vous souhaitez vous connecter, vous pouvez donc la spécifier explicitement. Vous pourriez aslo exécuter routes râte | Sessions Grep Code> et voyez ce que le nom du chemin est et utilisez-le directement. Par exemple: p>
J'ai mis à jour ma question comment créer un cadeau_filter: Nom de ressources?
Je crois que ressource_name code> est généralement la version de soulignement du nom de la classe. Vous pouvez essayer actuel_user.class.name.underscore code>. Cela devrait donner code> utilisateur code> pour un objet de type utilisateur code> ou fancy_user code> pour un objet de classe FancyUser.
Il existe des commentaires utiles sur ces méthodes d'assistance "spécifiques à des ressources" dans Devise / Contrôleurs / URL_HELPERS.RB
remercier ces travaux. J'ai remplacé new_registration_path (Nom de ressources) i> avec new_user_registration_path i> Cela fonctionne maintenant.
Le problème est que dans votre fichier La solution est simple, il suffit de supprimer les ressources La raison pour laquelle cela se produit est que les rails créent des aides d'itinéraire pour toutes les ressources. Donc, cela crée une aide d'itinéraire appelée new_session_path (format). Mais Devise crée également une méthode d'assistance appelée Notez que cela peut également se produire si vous faites quelque chose comme: p> Dans ce cas, la solution consiste à remplacer routes.rb code> Vous définissez une ressource appelée sessions code>, concevez également une ressource avec le même nom. : sessions code> à partir du fichier des itinéraires et tout devrait fonctionner. p> new_session_path (Nom de ressources) code>. La version Devise renvoie un chemin nouveau_ nouvelle_session code> et drotH_Session code> avec Connexion code> et Déconnexion code> respectivement. P > p>
Vous pouvez résoudre cette erreur mon remplacement de votre application / Vues / Devise / Confirmation / New.HTML Fichier avec P>
https://github.com/heartcombo/devise/pull/3684/files p>
avec l'application de fichier / vues / Devise / Confirmation / New.html dans la liaison ci-dessus Vous pouvez trouver ce fichier à partir du lien ci-dessus et remplacer votre fichier avec IT Beacuse Il existe certaines modifications apportées dans la version récente, alors visitez le lien ci-dessus et trouvez l'application / Vues / Devise / Confirmation / New.html Fichier de ci-dessus et remplacez-le par votre projet. Application de fichier / vues / Devise / Confirmation / New.html Fichier P>
Devrait poster le code et non un lien. Les réponses ne doivent pas compter sur une source externe.