2011-02-02 8 views
0

私はRyan BatesのRailscastに従っています。カスタマイズされたフィールドバリデーターを確立しようとしたときに、レール3が期待どおりに動作していないことがわかりました。rails 3バリデーターエラーをカスタマイズする

私はlibの下に新しいemail_format_validator.rbファイルを確立/とコードは次のとおりです。

class EmailFormatValidator < ActiveModel::EachValidator 
    def validate_each(object, attribute, value) 
    unless value =~ /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i 
     object.errors[attribute] << (options[:message] || "is not formatted properly") 
    end 
    end 
end 

私は私のuser.rb(モデルファイル)に次の行を置く:

validates :email, :presence => true, :uniqueness => true, :email_format=>true 

ブラウザが訴え:

不明バリデータを 'email_format'

なぜ?これを解決するには?

答えて

0

私は '設定/初期化子' の下に 'email_format_validator.rb' を置く... lib/validatorsの下でそれらを置くと、サーバーを再起動してみてください。その後、サーバーを再起動します。すべては今働いています..

4

サーバーを再起動する必要があります。 libディレクトリはデフォルトでは読み込まれないので、このバリデータを読み込むためにはRailsサーバを再起動する必要があります。

 

編集:

+0

ありがとう。私はこれを試した。まだ動作していません。 – lkahtz

+0

上記の編集を参照してください – sethvargo

+0

申し訳ありませんが、これはまだ動作していません....私は 'config/initializers'の下に置こうとしました。そして、今働いています.. – lkahtz

関連する問題