我正在尝试构建一个从其他模型渲染/处理部分的模型。基本上,主模型将提供一些通用功能,同时根据用户输入嵌入不同的模型。
换句话说,在同一个模型中,我需要从各种模型中渲染“_form.html.erb”并将它们保存为嵌套模型。
我知道如果它始终是相同类型的模型,nested model将会完成工作。
class Master < ActiveRecord::Base
has_one :{change depending on user input}
accepts_nested_attributes_for :{change depending on user input}
end
我看过多态模型,但似乎完全相反(即多个模型中的一个部分)。
有什么想法吗?多态嵌套模型还是什么?
答案 0 :(得分:1)
这看起来肯定你需要一个多态关联,但accepts_nested_attributes_for不支持多态。
但是,请查看此相关问题accepts_nested_attributes_for with belongs_to polymorphic
也许在您的表单中,您可以执行以下操作来呈现正确的_form partial:
<%= render :partial => File.join(@master.thing.class.name.underscore.pluralize, "form") %>
祝你好运!