gpt4 book ai didi

ruby-on-rails - 如何在有条件的情况下使用 After_save?

转载 作者:行者123 更新时间:2023-12-04 07:39:11 24 4
gpt4 key购买 nike

我无法在谷歌上找到它。我有 3 个模型。

模型 1 -> has_many 模型 2 -> 有很多模型 3

模型 1 具有确定可以创建多少个模型 2 的字段。并且模型 2 具有字段以了解必须创建多少个模型 3。

我希望在保存模型 1 时自动创建模型 2 和模型 3。

我想使用模型 1 after_create create_model2_record

def create_model2_record
for(x=0, x<=model1.field; x++){ #c sample
@model2 = Model2.new
}
end

如何使用 Rails 3 处理这个问题?谢谢

最佳答案

class Model1 << ....
after_save :create_related_models, :if => :some_condn? #use the condition only if needed

def create_related_models
@model2 = Model2.new
@model2... = ... #assign values to Model2 variables
if @model2.save
@model3 = Model3.new
@model3... = ... #assign values to Model3 variables
@model3.save
end
end
...
end

好吧,这是如何完成的基本概念。你可以随意更改create_related_models里面的代码,也可以选择使用或者不使用after_save中的条件。使用条件的一种场景可能是需要根据Model1中某个变量的值来决定是否创建Model2和Model3。我希望这对你有用。谢谢。

关于ruby-on-rails - 如何在有条件的情况下使用 After_save?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7116147/

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