Authlogicのエラーメッセージとかバリデーション条件を変更する
はい、私はAuthlogic派です。
皆さんご存知の通り、Authlogic様は認証周りのことを一手に引き受けてくれます。バリデーションもやってくれます。例えば、Authlogic様は4文字以上のパスワードしか許しません。短いパスワードで登録しようものなら
password is too short (minimum is 4 characters)
と、お怒りになられます。しかし私は思うのです。
4文字は短すぎるだろ、と。
そこでバリデーション条件を変更します。ついでにメッセージも変えちゃいます。
ドキュメントを見るとvalidates_length_of_password_field_options
という属性を持っていて、merge_validates_length_of_password_field_options
メソッドを用いることでバリデーションオプションを変更できるようです。うむ、長い。
実際やるときはこんな。
class User < ActiveRecord::Base acts_as_authentic do |c| c.login_field = :email merge_validates_length_of_password_field_options minimum: 8, message: '短けぇよ!' end end
typo不可避