rails accepts_nested_attributes and :reject_if
ruby-on-rails
Solution
According to docs http://api.rubyonrails.org/classes/ActiveRecord/NestedAttributes/ClassMethods.html
Alternatively, :reject_if also accepts a symbol for using methods:
class Member < ActiveRecord::Base
has_many :posts
accepts_nested_attributes_for :posts, :reject_if => :new_record?
end
class Member < ActiveRecord::Base
has_many :posts
accepts_nested_attributes_for :posts, :reject_if => :reject_posts
def reject_posts(attributed)
attributed['title'].blank?
end
end
This should work for you. Basically that means that in custom function you can do anything you want.
Problem
I have a form with nested attributes. Now in my `:reject_if =>` statement i would like to check an attribute on the nested model, say `first_record?` Is there a way to access such a method? It seems to me that you can only access the submitted attribute hash, to check if a field is blank for example. Thanks!