Ruby on rails Rails:如何在表中呈现嵌套表单
例如,我有两种型号:Ruby on rails Rails:如何在表中呈现嵌套表单,ruby-on-rails,form-for,Ruby On Rails,Form For,例如,我有两种型号: class Task < ApplicationRecord has_many :task_details end class TaskDetail < ApplicationRecord belong_to :task end 我的问题是:我怎样才能达到我的要求 谢谢确保您的任务模型具有接受任务的\u嵌套\u属性\u详细信息,然后您可以执行以下操作 <%= form_for @data[:task], :url => tasks_pa
class Task < ApplicationRecord
has_many :task_details
end
class TaskDetail < ApplicationRecord
belong_to :task
end
我的问题是:我怎样才能达到我的要求
谢谢确保您的
任务
模型具有接受任务的\u嵌套\u属性\u详细信息
,然后您可以执行以下操作
<%= form_for @data[:task], :url => tasks_path do |f| %>
<table>
<tr>
<th>Task Name</th>
<th>Task Description</th>
<tr>
<%= f.fields_for :task_details do |task_detail| %>
<tr>
<%= task_detail.hidden_field :id %>
<td><%= task_detail.text_field :name %></td>
<td><%= task_detail.text_field :description %> </td>
<tr>
<% end %>
</table>
<% end %>
谢谢在每个
处,我都有一个循环。那么,我如何才能使的字段只运行一次,并且使用已知的索引?我不明白你在问什么。您是说您的任务
对象只有一个任务详细信息
对象吗?然后循环将只显示一次。您是否在谈论显示多种不同类型的任务详细信息,并且用户选择了一种?也许您应该用示例清楚地解释您试图实现的目标。
<%= form_for @data[:task], :url => tasks_path do |f| %>
<table>
<tr>
<th>Task Name</th>
<th>Task Description</th>
<tr>
<%= f.fields_for :task_details do |task_detail| %>
<tr>
<%= task_detail.hidden_field :id %>
<td><%= task_detail.text_field :name %></td>
<td><%= task_detail.text_field :description %> </td>
<tr>
<% end %>
</table>
<% end %>
def new
...
@data[:task].task_details.build
...
end