Ruby on rails RubyonRails使用无关系的表单在表中插入多条记录
我正在建立一个时间表项目。我想根据分配给员工的项目数量插入多个记录 问题是如何使用表单在表中插入多条记录 例如,我正在尝试制作的图像: 表格编号为Ruby on rails RubyonRails使用无关系的表单在表中插入多条记录,ruby-on-rails,Ruby On Rails,我正在建立一个时间表项目。我想根据分配给员工的项目数量插入多个记录 问题是如何使用表单在表中插入多条记录 例如,我正在尝试制作的图像: 表格编号为 <%= form_for(:timesheets, :url => {:action => 'create',:employee_id => @pro.id}) do |d| %> <% if !@project.nil? %> <% @project.each do
<%= form_for(:timesheets, :url => {:action => 'create',:employee_id => @pro.id}) do |d| %>
<% if !@project.nil? %>
<% @project.each do |page| %>
<tr>
<%= d.hidden_field("employee_id" ,:value => @pro.id) %>
<%= d.hidden_field("project_id" ,:value => page.id) %>
<% if !page.employee_id.blank? %>
<td><%= page.prog_name %></td>
<td><%= d.text_field("IN",:class => "qty1") %></td>
<td><%= d.text_field("comments") %></td>
<% end %>
</tr>
<% end %>
<% end %>
<tr>
<td>Total hours</td>
<td colspan="2"><%= text_field_tag("total")%></td>
</tr>
<tr border="0">
<td><%= submit_tag("Submit") %></td>
<td colspan="2" border="0"></td>
</tr>
<% end %>
{:action=>'create',:employee_id=>@pro.id})do | d |%>
@专业id)%>
页面id)%>
“qty1”)%>
总小时数
你的问题很模糊,但我想我明白你的意思。最近我不得不构建一个类似的表单,并使用了一个带有row类的表单对象,row类的一个实例被初始化为需要添加的每个记录
如果您还不熟悉表单对象,请参见以下介绍:
这并没有包含您需要的很多细节,但它是我所看到并用于解决此类问题的模式的粗略概念大纲 您是否有任何到目前为止您尝试过的示例,或者有任何代码或其他有用的信息?
class TimesheetForm
# include ActiveModel stuff here
# attr_reader :projects, ...
# validations for form as a whole, if desired
def initalize(employee)
@employee = employee
@projects = employee.projects
end
def submit(params)
# extract params and create new instances of TimesheetForProject for each set of timesheet params
# run validations on all @timesheet_rows
# persist if all validations pass
end
class TimesheetForProject
# validations for each timesheet record
def initialize(project)
@project = project
end
# timesheet-specific form logic
end
end