Как подойти к рельсу сложной вложенной модели формы (с помощью Ajax) - PullRequest
1 голос
/ 26 марта 2012

Я новичок в Rails и работаю над страницей, которая позволяет пользователям создавать вопрос и добавлять к нему несколько вариантов.(используя ajax)

Таким образом, на странице должна быть форма, позволяющая пользователям добавлять заголовок вопроса, а также кнопка, при нажатии на которую добавляется текстовое поле для добавления опции вопроса.Пользователь может нажимать кнопку «Добавить» несколько раз, и каждый раз, когда ему нужно добавить текстовое поле для параметра.В конце пользователь нажимает кнопку «Сохранить», и вопрос вместе с опциями будет сохранен.

Итак, у меня есть эта модель для вопроса,

class Question
  include Mongoid::Document
  field :title, :type => String
  field :type, :type => String

  embeds_many :question_options
  accepts_nested_attributes_for :question_options

Теперь в моем представлении вопросов я отобразил форму для названия и типа вопроса.Я не уверен, что делать с созданием полей формы для опции вопроса, потому что я думаю, что каждый раз, когда пользователь нажимает кнопку «добавить», мне нужно вызывать

@question.question_options.build

Но действительно ли это посещение сервера необходимо?Если да, как я могу узнать, какой вопрос будет вызывать сборку, поскольку я еще не сохранил вопрос.Если нет, то каким должен быть мой подход.

Спасибо !!

1 Ответ

0 голосов
/ 26 марта 2012

Вам нужно только @question.question_options.build при первой загрузке страницы, чтобы у вас было одно поле «question_option».

Затем, когда пользователи нажимают кнопку «добавить», я думаю, что все, что вам нужно сделать, это продублировать первое поле «question_option», используя javascript.

Не уверен, что мое объяснение ясно на этом. Скажите, если вам нужно больше разъяснений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...