0

我正在使用 JavaScript 为嵌套模型生成隐藏输入的表单。它看起来有点像这样:

<!-- Attrs. inputs for nested model price -->
<button>Add price</button>

jscript 会弹出一个引导模式,其中包含用于传递新价格属性的字段并为它们生成隐藏输入,如下所示:

<input type="hidden" value="1" name="product[prices_attributes][0][quantity]">
<input type="hidden" value="123" name="product[prices_attributes][0][amount]">

这意味着,对于我想发送给控制器的每个新价格,我必须生成 ID。问题是,有没有办法让控制器动态生成 id,而不是自己设置这些?

4

1 回答 1

1

一种方法是获取当前时间戳而不是[0]您正在使用的时间戳。实际上,这不会用作新对象的 ID。将记录保存在数据库中时将创建 ID。您使用的那些“ID”仅用于识别不同的对象,因此您只需要它们是唯一的,因此时间戳是一个很好的解决方案。

new Date().getTime();

我还建议你试试这个 gem:https ://github.com/ryanb/nested_form

于 2012-10-13T20:23:20.563 回答