- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图一次为同一个模型创建多个记录(Rails 4.1.2),但表单只向 Controller 发送一组参数值(实际上只有第一行)......
基本上,我的索引 View 中有一个表单,只需单击 + 号(使用 javascript 附加表行)即可添加更多记录,以一次添加更多记录行……然后点击提交以一次性创建所有记录。
到目前为止,这是我认为的:
<div class="table-responsive">
<table class="table equipment-table" id="EquipmentTable">
<thead>
<tr>
<th>Equipment name</th>
<th>Serial number</th>
<th>Date out warehouse</th>
<th>Date in warehouse</th>
<th>Technician</th>
<th>Site location</th>
<th>Date in</th>
<th>Date out</th>
<th>Technician return</th>
</tr>
</thead>
<tbody id="tableToModify">
<% @equipments.each do |equipment| %>
<tr>
<td><%= equipment.equipment_name %></td>
<td><%= equipment.serial_number %></td>
<td><%= equipment.date_out_warehouse %></td>
<td><%= equipment.date_in_warehouse %></td>
<td><%= equipment.technician %></td>
<td><%= equipment.site_location %></td>
<td><%= equipment.date_in %></td>
<td><%= equipment.date_out %></td>
<td><%= equipment.technician_return %></td>
</tr>
<% end %>
<%= form_tag make_multiple_equipments_path, method: :post do %>
<tr class="equipment_row" id="rowToClone">
<%= fields_for "equipments[]", @equipment do |f| %>
<td><%= f.text_field :equipment_name, size: 15 %></td>
<td><%= f.text_field :serial_number, size: 7 %></td>
<td><%= f.date_field :date_out_warehouse %></td>
<td><%= f.date_field :date_in_warehouse %></td>
<td><%= f.text_field :technician, size: 12 %></td>
<td><%= f.text_field :site_location, size: 12 %></td>
<td><%= f.date_field :date_in %></td>
<td><%= f.date_field :date_out %></td>
<td><%= f.text_field :technician_return, size: 15 %></td>
<td><input type="button" id="delbutton" class="btn btn-danger" value=" - " onclick="deleteRow(this)"/></td>
<% end %>
</tr>
</tbody>
</table>
<input type="button" onclick="cloneRow()" value=" + " class="btn btn-success"/>
<br>
<%= submit_tag "Submit", class: "btn btn-primary" %>
<% end %>
</div>
<script type="text/javascript">
function deleteRow(row)
{
var i=row.parentNode.parentNode.rowIndex;
document.getElementById('EquipmentTable').deleteRow(i);
}
function cloneRow()
{
var row = document.getElementById("rowToClone"); // find row to copy
var table = document.getElementById("tableToModify"); // find table to append to
var clone = row.cloneNode(true); // copy children too
table.appendChild(clone); // add new row to end of table
}
</script>
def index
@job = Job.find(params[:job_id])
@equipments = @job.equipments.all
@equipment = Equipment.new(:date_out_warehouse => Time.now, :date_in_warehouse => Time.now, :date_in => Time.now, :date_out => Time.now)
end
def make_multiple_equipments
@job = Job.find(params[:job_id])
count = 0
equipments_array = params.permit(equipments: [:equipment_name, :serial_number, :date_out_warehouse, :date_in_warehouse, :technician, :site_location, :date_in, :date_out, :technician_return]).require(:equipments)
while count < equipments_array.count
@job.equipments.create(equipments_array[count])
count = count + 1
end
redirect_to job_equipment_index_path(@job), :notice => 'Equipment were successfully created.'
end
{"utf8"=>"✓",
"authenticity_token"=>"TdHJAFI+Vw5zxFKDNXbx7LHPcT2mJ4BBg04Qt0Z9QNY=",
"equipments"=>[{"equipment_name"=>"tester",
"serial_number"=>"29",
"date_out_warehouse"=>"2014-08-04",
"date_in_warehouse"=>"2014-08-04",
"technician"=>"paul",
"site_location"=>"steve",
"date_in"=>"2014-08-04",
"date_out"=>"2014-08-04",
"technician_return"=>"mark"}],
"commit"=>"Submit",
"job_id"=>"2"}
<td><%= text_field_tag "equipments[][equipment_name]" %></td>
<td><%= text_field_tag "equipments[][serial_number]" %></td>
<td><%= date_field_tag "equipments[][date_out_warehouse]" %></td>
<td><%= date_field_tag "equipments[][date_in_warehouse]" %></td>
<td><%= text_field_tag "equipments[][technician]" %></td>
<td><%= text_field_tag "equipments[][site_location]" %></td>
<td><%= date_field_tag "equipments[][date_in]" %></td>
<td><%= date_field_tag "equipments[][date_out]" %></td>
<td><%= text_field_tag "equipments[][technician_return]" %></td>
{"utf8"=>"✓",
"authenticity_token"=>"oX6niXZFQQzoomlsojYweAuXtiLjP7LCdKGhOvUe/Vw=",
"equipments"=>[{"equipment_name"=>"boot",
"serial_number"=>"23",
"date_out_warehouse"=>"2014-08-08",
"date_in_warehouse"=>"2014-08-08",
"technician"=>"paul",
"site_location"=>"steve",
"date_in"=>"",
"date_out"=>"",
"technician_return"=>"frank"}],
"commit"=>"Submit",
"job_id"=>"3"}
最佳答案
唯一的问题是在你的 js 克隆函数中:
function cloneRow()
{
var row = document.getElementById("rowToClone"); // find row to copy
var tableForm = document.getElementById("tableToModify").getElementsByTagName("form"); // find table to append to
var clone = row.cloneNode(true); // copy children too
tableForm.appendChild(clone); // add new row to end of table
}
getElementsByTagName
的表格但也许你应该考虑添加一个
id
到你的表格。
关于ruby-on-rails - Rails 4 以一种形式创建同一模型的多个记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25126481/
我有一个网站。 必须登录才能看到里面的内容。 但是,我使用此代码登录。 doc = Jsoup.connect("http://46.137.207.181/Account/Login.aspx")
我正在尝试为我的域创建一个 SPF 记录并使我的邮件服务器能够对其进行评估。我在邮件服务器上使用 Postfix 并使用 policyd-spf (Python) 来评估记录。目前,我通过我的私有(p
我需要为负载平衡的 AWS 站点 mywebsite.com 添加 CName 记录。记录应该是: @ CNAME mywebsite.us-east-1.elb.amazon
我目前正在开发一个相当大的多层应用程序,该应用程序将部署在海外。虽然我希望它在解聚后不会折叠或爆炸,但我不能 100% 确定这一点。因此,如果我知道我可以请求日志文件,以准确找出问题所在以及原因,那就
我使用以下命令从我的网络摄像头录制音频和视频 gst-launch-0.10 v4l2src ! video/x-raw-yuv,width=640,height=480,framerate=30/1
我刚刚开始使用 ffmpeg 将视频分割成图像。我想知道是否可以将控制台输出信息保存到日志文件中。我试过“-v 10”参数,也试过“-loglevel”参数。我在另一个 SO 帖子上看到使用 ffmp
我想针对两个日期查询我的表并检索其中的记录。 我这样声明我的变量; DECLARE @StartDate datetime; DECLARE @EndDate datetime; 并像这样设置我的变量
在 javascript 中,我可以使用简单的 for 循环访问对象的每个属性,如下所示 var myObj = {x:1, y:2}; var i, sum=0; for(i in myObj) s
最近加入了一个需要处理大量代码的项目,我想开始记录和可视化调用图的一些流程,让我更好地理解一切是如何组合在一起的。这是我希望在我的理想工具中看到的: 每个节点都是一个函数/方法 如果一个函数可以调用另
如何使用反射在F#中创建记录类型?谢谢 最佳答案 您可以使用 FSharpValue.MakeRecord [MSDN]创建一个记录实例,但是我认为F#中没有任何定义记录类型的东西。但是,记录会编译为
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 3年前关闭。 Improve thi
我是 Sequelize 的新手并且遇到了一些语法问题。我制作了以下模型: // User sequelize.define('user', { name: { type: DataTyp
${student.name} Notify 这是我的output.jsp。请注意,我已经放置了一个链接“Notify”以将其转发到 display.jsp 上。但我不确定如何将 Stud
例如,这是我要做的查询: server:"xxx.xxx.com" AND request_url:"/xxx/xxx/xxx" AND http_X_Forwarded_Proto:(https O
我一直在开发大量 Java、PHP 和 Python。所有这些都提供了很棒的日志记录包(分别是 Log4J、Log 或logging)。这在调试应用程序时有很大帮助。特别是当应用程序 headless
在我的Grails应用程序中,我异步运行一些批处理过程,并希望该过程记录各种状态消息,以便管理员以后可以检查它们。 我考虑过将log4j JDBC附加程序用作最简单的解决方案,但是据我所知,它不使用D
我想将进入 MQ 队列的消息记录到数据库/文件或其他日志队列,并且我无法修改现有代码。是否有任何方法可以实现某种类似于 HTTP 嗅探器的消息记录实用程序?或者也许 MQ 有一些内置的功能来记录消息?
如果我有一条包含通用字段的记录,在更改通用字段时是否有任何方法可以模仿方便的 with 语法? 即如果我有 type User = // 'photo can be Bitmap or Url {
假设我有一个名为 Car 的自定义对象。其中的所有字段都是私有(private)的。 public class Car { private String mName; private
当记录具有特定字段时,我需要返回 true 的函数,反之亦然。示例: -record(robot, {name, type=industrial, ho
我是一名优秀的程序员,十分优秀!