是否可以使用动态查找/创建方法跳过验证?
例如,通过常规保存,我可以执行以下操作:
p = Post.new p.title = nil p.body = nil p.save(:validate => false)
很想用find_or_create_by_title做同样的事情.
解决方法
使用
code in Rails right now看起来很可能,但是如果你编写代码的话,你可能会有更好的运气.您可以使用find_or_initialize_by_创建新对象但不保存它.然后您可以使用自定义选项调用save,同样在
documentation中他们有一个很难找到的简洁演示,所以我将在下面包含它:
# No 'Winter' tag exists winter = Tag.find_or_initialize_by_name("Winter") winter.new_record? # true
祝你好运,如果你需要更多关于正确方向的指示,请告诉我.