2013-08-12 4 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

Смежные вопросы