gpt4 book ai didi

ruby-on-rails - Rails 3.0.10 before_validation 回调未为关联的集合对象调用

转载 作者:行者123 更新时间:2023-12-03 15:59:41 25 4
gpt4 key购买 nike

我有一个名为 Parent 的对象,它有多个子对象:

has_many :children
accepts_nested_attributes_for :children, :allow_destroy => true

Child 包含一个指定 :before_validation 的模块。打回来:
def self.included base
base.class_eval do
before_validation :my_callback
end
end

protected
def my_callback
logger.debug "see me!"
end

我注意到在为子级创建父级和嵌套属性时, :before_validation没有为每个 child 调用回调。这是预期的行为吗?我试过做 before_save而是回调,它似乎工作正常。

这是在 Rails 3.0.10 上。

谢谢!

最佳答案

您应该使用 validates_associated :

class Parent < ActiveRecord::Base
has_many :children
accepts_nested_attributes_for :children, :allow_destroy => true
validates_associated :children
end

关于ruby-on-rails - Rails 3.0.10 before_validation 回调未为关联的集合对象调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8128313/

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