Jungs. Ich habe ein Problem bei der Authentifizierungsprüfung. Ich habe das magische "aktive" Feld im Benutzermodell, sagen wir, wenn aktiv ist falsch, wenn Login mit korrektem Passwort, wird es die Nachricht wie "Sie sind suspendiert, bitte kontaktieren Sie Ihre Verwaltung" (ich definierte diese Nachricht in I18n Datei); Wenn Sie sich mit einem falschen Passwort anmelden, wird die Meldung "not_active" sowie die Meldung "password_invalid" wie "password invalid" angezeigt. Ich denke, das liegt daran, dass authlogic die Validierung sowohl für das "aktive" Feld als auch für das Passwort durchgeführt hat und es scheint, dass die Passwort-Validierung an erster Stelle steht.Authlogic Validierung Bestellung
Meine Frage ist, wie kann die Kennwortüberprüfung umgehen, wenn ‚aktiv‘ falsch ist. Oder kann ich nur eine nicht aktive Nachricht anzeigen? mein Code wie:
if @user_session.save
redirect_to home_path
else
render :json => {:success => false, :error => @user_session.errors.full_messages.join("\n")}
end
Ich denke, Sie sollten zuerst nach Passwort und dann nach aktiv suchen. –
@Joy: Aber ich möchte die Passwort-Validierung umgehen, wenn aktiv ist falsch. Ich möchte nur die not_active Nachricht anzeigen, wenn der Benutzer inaktiv ist, ohne die password_invalid Nachricht egal richtig oder falsches Passwort Benutzer eingegeben. –