2009-09-16 4 views
0
(rdb:1) @account_session = AccountSession.new 
# => <AccountSession: no credentials provided> 
(rdb:1) @account_session.errors 
# => <Authlogic::Session::Validation::Errors:0x213cc78 @errors={}, @base=#<AccountSession: no credentials provided>> 

Comment puis-je empêcher cela? Notez également que les informations d'identification ne peuvent pas être fournies à l'avance car elles remplissent le: nouveau formulaire avec des données (incorrectes). Un nouveau formulaire de connexion doit être vide.AuthLogic charge automatiquement les erreurs dans @base et remplit ces erreurs sur un formulaire de connexion

Répondre

0

Je l'ai reproduit sur une installation vanilla Rails qui contient uniquement AuthLogic. Il a révélé que le comportement décrit dans cette question est en fait un comportement de conception AuthLogic. Je n'aime pas cela parce que l'appel de #new sur le modèle ne devrait pas donner lieu à des erreurs s'il n'en existe pas vraiment. Et c'est aussi génial si un formulaire a des éléments d'interface utilisateur qui affichent un style d'erreur pour les erreurs @base. Je vais répondre à cela sur les questions github de la gemme.

+0

Mon message au propriétaire d'AuthLogic: ... Pourquoi ajouter des erreurs @base sur une nouvelle instance de session? ... Je pense à forcer Authlogic pour enlever ce comportement. Sa réponse: Je suis d'accord, je vais voir ce que je peux faire pour changer cela. Merci. – Gavin

0

Validez-vous votre modèle dans l'une de vos méthodes/avant-filtres, etc.?

Questions connexes