说User
有很多Photos
。我想像这样命名每个photo
:
def safe_name
self.name = "#{user.code}#{user.photos.count + 1}"
end
保存关联时验证此名称。我可以在after_save
中调用该方法并让它工作,但照片的名称不应该是空白的。如何在保存照片之前抓住它以使其有效?
答案 0 :(得分:0)
如果您需要操作数据然后验证它,您可以使用Active Record回调before_validation。这将修改名称,然后调用验证器。
http://api.rubyonrails.org/classes/ActiveRecord/Callbacks.html
答案 1 :(得分:0)
您可以使用before_validation
回调