のエラーを「メールが既に取られている」発生私は、このように、電子メールを使用するように設定したログインフィールドで、私のユーザモデルとauthlogic使用しています:はAuthlogic:二回
acts_as_authentic do |c|
c.login_field = :email
end
私は新しい作成しようとした場合ユーザー、および電子メールが既に使用されている、それは二回重複した電子メールのエラーを追加します(コンソールから)
user = User.new(:first_name => "fred", :last_name => "Smith", :email => User.last.email);user.valid?;errors = user.errors
=> {:email=>["has already been taken", "has already been taken"]}
を私は多分、これはログインとして電子メールを使用して行うためのものです推測していますか?私はvalidates_format_of以外の電子メールには他のバリデーションはありません。私はそのバリデーションを削除して実験しました(違いはありません)。
妥当性検査が失敗したときに私がフォームに表示したエラーを台無しにしてしまうのは苦痛です。
私がauthlogicをハックしようとする前に、なぜこれが起こっているのかも知れませんか?ありがとう、最大
aha、cool、thanks :) –
また、そのフィールドに手動で割り当てられていないかどうかを確認してください。 'validates:email、:presence => true'です。これは、メッセージが3回返されることになりました。情報のために – mrt