Ruby on rails Rails:如何使update_属性进行验证?
模型材质有三个属性:Ruby on rails Rails:如何使update_属性进行验证?,ruby-on-rails,validation,Ruby On Rails,Validation,模型材质有三个属性:attr\u一、attr\u二、attr\u三 内料控制器 def update @material.update_attribute(:attr_one, 'Atom') @material.update_attribute(:attr_two, 'Sublime') end 这将绕过attr_one和attr_two的验证。 我想绕过attr_one的验证,但想对attr_two进行验证。 如何做到这一点 我可以这样做吗 def update @mate
attr\u一、attr\u二、attr\u三
内料控制器
def update
@material.update_attribute(:attr_one, 'Atom')
@material.update_attribute(:attr_two, 'Sublime')
end
这将绕过attr_one和attr_two的验证。
我想绕过attr_one的验证,但想对attr_two进行验证。
如何做到这一点
我可以这样做吗
def update
@material.update_attribute(:attr_one, 'Atom')
@material.save(validate: false)
@material.update_attribute(:attr_two, 'Sublime')
@material.save(validate: true)
end
将运行验证:
@material.update_attribute(:attr_one, 'Atom')
@material.update(:attr_two: 'Sublime')
我可以这样做吗
@material.update_attribute(:attr_one, 'Atom')
@material.save(validate: false)
@material.update_attribute(:attr_two, 'Sublime')
@material.save(validate: true)
不,在对象上运行
save
没有意义,因为update\u属性和update
都将保存对象。问题解决了吗?