我有一个名为“Controller”的父模型(成熟的应用程序,而不是我的决定)
belongs_to :controller
accepts_nested_attributes_for :controller
形式:
= f.fields_for :controller do |c|
= c.hidden_field :id, :value => @controller.id
= c.text_field :slw_type
不会显示。
= f.fields_for :literally_anything_else do |c|
= c.hidden_field :id, :value => @controller.id
= c.text_field :slw_type
如果将变量名称更改为其他任何名称,则表单将构建。我有一种预感,它是特定于 Rails 的保留名称。
问题:
有什么问题?我怎样才能做到这一点?
解决了:
问题是父模型尚未与子模型关联。我的错误是没有提供所有必要的信息。
这行得通。
def new
@controller = Controller.find(params[:controller_id])
@inspection = Inspection.new(:controller => @controller)
因此我的 fields_for 表单构建器也可以工作。