2014-06-18 52 views
0

我有一個數組列的模型(box_ids)。在我看來,我想爲數組中的每個值以及三個額外的空字段都有一個字段,以便能夠將新值添加到數組中。如何去做這件事?我有以下幾點:Rails和Postgres數組列

<%= f.fields_for "box_ids[]", @shop do |bid| %> 
    <div class="form-group"> 
     <%= bid.label :box_id %> Box ID: <%= bid.text_field [WHAT HERE] %> 
    </div> 
    <% end %> 

我不知道這是正確的做法,但在任何情況下,我有沒有方法來提供給text_field。

有什麼建議嗎?

編輯:

這工作:

<% @shop.box_ids.each do |bid| %> 
    <div class="form-group"> 
     <%= label_tag :box_id %> Box ID: <%= text_field_tag "box_ids[]", bid %> 
    </div> 
    <% end %> 
    <% 3.times do %> 
    <div class="form-group"> 
     <%= label_tag :box_id %> Box ID: <%= text_field_tag "box_ids[]" %> 
    </div> 
    <% end %> 

但是,這需要在控制器特殊處理 - 我想避免,如果可能的。

+0

你可以檢查出價嗎? – emaillenin

+0

是的 - 這是一個ActionView :: Helpers :: FormBuilder – jriff

+0

而bid.object是一個Shop類。 – jriff

回答

0
<%= f.fields_for "box_ids[]", @shop do |bid| %> 
    <div class="form-group"> 
     <%= bid.label :box_id %> Box ID: <%= bid.text_field :box_ids %> 
    </div> 
    <% end %> 
+0

感謝您的建議。但是,這只是:#<商店:0x007faf763f3720>未定義的方法'1' – jriff

+0

直接嘗試box_ids – emaillenin

+0

這只是給我{1,2,3}在文本字段。 – jriff