OK, dzisiaj natrafiłem na zaskakującą sytuację (świeża instalacja softu, może dlatego):
[code]class User < ActiveRecord::Base
validates :email, :presence => true, :uniqueness => true, :format => { :with => /\A([^@\s]+)@((?:[-a-z0-9]+.)+[a-z]{2,})\Z/i, :on => :create }
end[/code]
Ten kawałek kodu (także BEZ sprawdzania formatu, tj. samo presence) w momencie odpalenia wyrzuca mi błąd:
ArgumentError: You need to supply at least one validation
from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activemodel-3.0.1/lib/active_model/validations/validates.rb:79:in `validates'
from /Users/pawelkomarnicki/Documents/PsieMiejsca/Aplikacja/app/models/user.rb:8
from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:454:in `load'
from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:454:in `load_file'
from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:591:in `new_constants_in'
from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:453:in `load_file'
from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:340:in `require_or_load'
from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:491:in `load_missing_constant'
from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:183:in `const_missing'
from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:181:in `each'
from /opt/ruby-enterprise-1.8.7-2010.02/lib/ruby/gems/1.8/gems/activesupport-3.0.1/lib/active_support/dependencies.rb:181:in `const_missing'
from (irb):1
I teraz się zastanawiam o co chodzi, bo nie pierwszy raz korzystam z Rails3 i dopiero teraz takie coś mi wyskoczyło — myślicie, że to może być związane z korzystaniem z Ruby Enterprise?
Dzięki z góry za wskazówki, ja już średnio dzisiaj kapuję o co chodzi z tym błędem