如何使用简单表单创建自定义集合选择输入

时间:2013-08-12 06:48:13

标签: ruby-on-rails simple-form has-many-through

我想构建一个自定义集合选择输入,它将一组文本字段作为输入而不是一组复选框。我有三个基本模型:

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输入。如果有人能指出我的教程或功能示例,我一定会感激。

1 个答案:

答案 0 :(得分:0)

我不知道这是否是最好的方法,但我会使用您目前拥有的复选框解决方案,然后显示除了它们之外的选择条款和文本字段的列表。 使用JS创建列表和文本字段。