我正在使用ActiveAdmin並試圖做一個::select
,:collection
這不是一個多重選擇。ActiveAdmin表單不尊重:多個=> false
我的代碼是:
form do |f|
f.input :users, :as => :select, :input_html => { :size => 1}, :multiple => false, collection: User.where(role:1), include_blank: false
end
如果這是/admin/businesses.rb
。這種關係是用戶和企業之間存在着危機。我嘗試重新排列我的選項,如github issue所示。我也看了一下similar stackoverflow question。
然而,當我嘗試用:multiple => false
,我得到生成此代碼:
<select id="business_user_ids" multiple="multiple" name="business[user_ids][]" size="1">
<option value="4">Pilgrim</option>
<option value="5" selected="selected">Mary</option>
<option value="6" selected="selected">Bob</option>
<option value="7">Billy</option>
<option value="8">Ash</option></select>
注意,有兩個選擇,以及對多種代碼設置爲multiple
。任何人都知道這是爲什麼?
此外,我想弄清楚如何顯示另一個字段作爲可選項。
例如,我有f.inputs:users。有沒有一種方法可以重命名用戶顯示的內容?現在,它顯示users.name,但我想用users.email。
謝謝,工作像猴子補丁的魅力。我也會檢查一下to_label。有沒有辦法在運行中更改to_label?例如,如果一個表單我想呈現.name,但是在另一個表單上,我想將.email顯示爲to_label,那可能嗎? – LyricalPanda 2012-08-02 18:32:59
根據http://rubydoc.info/gems/formtastic/2.0.0/Formtastic/Helpers/InputHelper 您可以傳遞輸入選項:member_label或:label_method for舊版本的Formtastic – StackNG 2012-08-03 03:16:51