i really like the declarative model-based validation in rails, but i run into trouble while doing some real world (more complex) stuff.
class User < ActiveRecord::Base belongs_to :address accepts_nested_attributes_for :address def needs_street_validation? true end end class Address < ActiveRecord::Base has_one :user validates_presence_of :street, :if => Proc.new { |adr| adr.user.needs_street_validation? } end u = User.new u.address = Address.new u.save NoMethodError: You have a nil object when you didn't expect it! The error occurred while evaluating nil.needs_street_validation? from app/models/address.rb:3 seems to me like we cannot reference any associated object within the ":if" condition or do you know some trick to get this working ? maybe this is not the best example, but i hope you got the point. in most more-complex gui's we have conditional validation based on the state of multiple objects. It would be a shame if we could only handle those validation programmatically. tested in a vanilla rails 2.3.2 application. any help would be really appreciated. regards jan --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk@googlegroups.com To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---