【问题标题】:Accessing nested model attributes inside a fields_for without using FormBuilder在不使用 FormBuilder 的情况下访问 fields_for 内的嵌套模型属性
【发布时间】:2010-11-03 13:00:03
【问题描述】:

我有一个 Rails 表单,用于创建和编辑具有 has_many 关系的模型。我非常熟悉具有嵌套模型的典型表单,但我当前的问题需要使用典型的 FormBuilder 助手和其他 HTML 元素使用模型本身的数据访问渲染一些表单元素。例如,我的顶级表单具有以下内容:

<% customer_form.fields_for :customer_images do |images_form| %>
    <%= render :partial => 'customer_image_show', :locals => { :f => images_form } %>
<% end %>

然后,在部分表单中,我需要执行以下操作:

<dd><%= f.text_field :image_description %></dd>

...还可以访问 customer_images 模型中的属性(例如,customer_image 记录的 ID)。

我觉得这应该很简单,我只是缺少一些基本的东西。任何帮助表示赞赏。这是一个 Rails 2.3.8 应用程序。

【问题讨论】:

    标签: ruby-on-rails ruby


    【解决方案1】:

    你可以打电话

    f.object
    

    获取与表单关联的对象。

    【讨论】:

    • 我很惊讶 Ruby on Rails 文档中没有更明确地解释这一点,因为这在构建和维护表单时非常有用。谢谢你的单片眼镜!
    【解决方案2】:

    不确定这是否是您需要的,但您不能将模型数据包含为本地数据吗?喜欢:

    <%= render :partial => 'customer_image_show', :locals => { :f => images_form, :customer_image => @customer_image } %>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多