モデルにフォーマット検証を適用しようとしていますが、モデルを作成しても無効として返されません。長さの検証を追加しましたが、問題なく動作します。私は何を間違っていますか?
require 'rubygems'
require 'active_record'
class User < ActiveRecord::Base
validates :username, :format => { :with => /[A-Za-z]+/, :message => "Only letters a-z are allowed" }
validates :username, :length => { :maximum => 20, :too_long => "%{count} letters is too many"}
end
ActiveRecord::Base.establish_connection( ... )
user = User.create!(:username => 'johnsmith1234', :signupdate => '2010-11-12')
puts user.valid?
長さが 20 文字を超えない限り、出力は常に true であり、長さに関するエラーが発生します。では、なぜフォーマット検証が起動しないのでしょうか?