2013-08-12 53 views
0

我想構建自定義集合選擇輸入,該輸入將文本字段集合作爲輸入而不是複選框集合。我有三種基本型號:如何使用簡單形式創建自定義集合選擇輸入

class Signature 
    has_many :signature_terms 
    has_many :signatures, :through => :signature_terms 
    ... 

class SignatureTerm 
    attr_accessible :initial # user provides initial as verification 

    belongs_to :signature 
    belongs_to :term 
    ... 

class Term 
    has_many :signature_terms 
    has_many :signatures, :through => :signature_terms 
    ... 

我需要爲用戶提供每個術語來初始化。用單選按鈕或複選框,這是相當容易實現的:

= simple_form_for @signature do |f| 
    ... 
    = f.collection_check_boxes :policy_term_signature_ids, @signature.terms, :id, :name 

這使我可以建立關係。但是,我想向用戶展示他們的每個術語,以便初始/不初始。

我讀過關於自定義簡單表單字段輸入的文檔,並且已經成功地遵循了代碼以外的示例。我無法做的是實現一個自定義的collection_select輸入。如果有人能指點我一個教程或功能的例子,我一定會很感激。

回答

0

我不知道這是否是最好的方法,但我會使用您當前擁有的複選框解決方案,然後顯示除首字母以外的選定術語和文本字段列表。 用JS創建列表和文本框。

+0

感謝您的回覆。在多思考問題之後,我認爲正確的做法是構建子關係的所有實例,然後通過fields_for編輯子項。雖然簡單的表單提供了複選框功能,但我認爲這是「rails方式」的一個例外。 – dtorgerson

相關問題