2016-05-26 33 views
0

是否有任何理由使用reject_if并做类似的事情?如果您可以使用验证,为什么会使用reject_if?

class User < ActiveRecord::Base 
    has_many :posts 
    accepts_nested_attributes_for :posts, reject_if: proc do |attributes| 
    attributes['title'].blank? 
    end 
end 

而不是在Post模型上使用验证?

class Post < ActiveRecord::Base 
    belongs_to :user 
    validates :title, presence: true 
end 

回答

1

如果使用验证,User创作会,如果存在一个Post不有一个标题失败。

如果使用reject_if,即使部分或全部Posts没有标题,User的创建也会成功。只有那些没有标题的帖子才会被保存。

相关问题