gpt4 book ai didi

ruby-on-rails - 根据父模型验证模型

转载 作者:数据小太阳 更新时间:2023-10-29 07:38:35 25 4
gpt4 key购买 nike

我有两个模型,一个是另一个的父级,父级接受子级的 accept_nested_attributes_for 和 validates_associated。

但是,我的一些验证有一个 :if 需要检查父级的属性之一。

我在想我可以做这样的事情:

validates_presence_of :blah, :if => Proc.new{|thing| thing.parent.some_value.present?}

但是,“父”关系似乎并没有在验证时建立(我假设 child 首先被实例化和验证。

那么有什么方法可以做我想做的事情吗?可能吗?

最佳答案

您可以像这样根据需要使用 before_update 或 before_create 回调..

def before_update
self.errors.add("Error Message") if self.parent.some_value.present?
return false if self.errors.count > 0
end

def before_create
self.errors.add("Error Message") if self.parent.some_value.present?
return false if self.errors.count > 0
end

关于ruby-on-rails - 根据父模型验证模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5634351/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com