2010-02-24 62 views
2

说用户has_many事物。在用户表单中,我想要一个hidden_​​field,让我在这个新用户和预先存在的Thing之间创建一个关系,比如说id 8。下面的代码片段有什么问题?我想我只是忘记了一些语法。在隐藏字段中创建has_many关联

<% f.hidden_field 'things[]', :value => 8 %> 

回答

6
<% f.hidden_field 'thing_id[]', :value => 8 %> 
9

对于后人......如果你有“东西”是需要被发送到阵列的服务器多个值,这里是如何使其工作:

<% user.things.each do |thing| %> 
    <% f.hidden_field 'thing_ids][', :value => thing.id %> 
<% end %> 

注意带有things_ids []的反括号。如果括号不颠倒,服务器得到"thing_ids"=>[nil, nil],假设用户有2件事情。使用反括号,您将在param thing_ids数组中获得正确的事件ID。

+1

感谢您的支持。这对我有效。 @ghoppe的解决方案没有 – amaseuk 2012-03-15 18:33:15