2013-09-23 72 views
1

我有一個tradie模型,有很多tradie_category模型。在形式爲tradie我增加了以下內容:多選擇發送空字符串到導軌控制器

= form_for @tradie do |tradie| 
    = tradie.select :tradie_category_ids, @categories, {}, { multiple: true } 

在HTML中,會產生以下...

<form accept-charset="UTF-8" action="/add_a_tradies/create" class="new_tradie" method="post"> 
    <input name="tradie[tradie_category_ids][]" type="hidden" value=""> 
    <select class="form-control" id="tradie_tradie_category_ids" multiple="multiple" name="tradie[tradie_category_ids][]"> 
    <option value="2">mechanic</option> 
    <option value="1">plumber</option> 
    </select> 
</form> 

我刪除的真實性令牌和提交按鈕,因爲它有沒有必要我問題。每當我發佈表單時,參數tradie_category_ids都以空字符串形式返回。出現了什麼問題以及如何解決問題,以便我可以爲創建的tradie創建多個tradie類別。

+0

報價在你的控制器,你可以做一個'把params.inspect'向我們展示的結果是什麼? (當然,請確保你選擇的東西在傳統類別ID):) –

+0

是的,我已經做到了:':tradie_category_ids =>「」' – jason328

+0

''這個隱藏域來自哪裏?它是否會壓倒你的選擇? – tihom

回答

1

試試這個

= form_for @tradie do |tradie| 
    = tradie.select :tradie_category_ids, @categories, {}, { multiple: "true" or 'true' } 

注意周圍

{ multiple: "true" or 'true' } in 
+0

這項工作?你試過這個版本的rails嗎? –

+0

@Swapnil,我認爲這是去年,我猜Rails 3.2 – TheAshwaniK

相關問題