Как указать контроллер и действие в форме для создания новых ресурсов

У меня есть QuestionsController и TrueFalseQuestionsController. Я создал форму для создания вопроса true/false, это моя форма:

<%= simple_form_for @question, defaults: { error: false } do |question_form| %>
  <fieldset>
    <legend>Question</legend>
    <%= render 'shared/error_messages', object: question_form.object %>
    <%= question_form.input :content, input_html: { rows: 3, class: 'span6' } %>
    <%= question_form.input :mark, input_html: { class: 'span1' } %>
    <%= question_form.association :topic %>

    <%= question_form.simple_fields_for :answers do |answer_form| %>    
      <%= answer_form.input :correct,
            collection: [[true, 'True'], [false, 'False']],
            as: :radio_buttons,
            label: 'Answer',
            value_method: :first,
            label_method: :last,
            item_wrapper_class: 'inline' %>
    <% end %>
  </fieldset>

    <%= question_form.button :submit, class: 'new_resource' %>
<% end %>

Теперь, когда я отправляю форму, она использует действие создания в QuestionsController, так как же указать форму для использования действия создания в TrueFalseQuestionsController?


person Thanh    schedule 30.10.2012    source источник


Ответы (1)


снова вы :), так что, как я сказал вам в последнем вопросе, если у вас есть три части для этих трех типов вопросов, просто сделайте это по-разному в каждой части. И я предполагаю, что у вас были вложенные маршруты, установленные прямо в route.rb

Например, при истинно ложной форме вопроса вы можете сделать

form_for @question, :url=>true_false_questions_path do |f| 

Другие делают то же самое.

person Yunwei.W    schedule 30.10.2012
comment
:) Спасибо за ответ, в настоящее время я решил разделить на три контроллера. - person Thanh; 30.10.2012