我正在構建一個表單,以創建一個以1個問題開頭的考試對象,並且我想爲「新問題」設置一個按鈕,以便在另一個問題字段中使用AJAX。在Rails中,當父元素不存在時,如何創建一個指向新子元素的鏈接?
只有單個問題,表單很好,當我嘗試在另一個問題字段中創建到AJAX的鏈接時,我的問題就出現了。如果我使用類似的東西:
<%= link_to "New Question", new_exam_question_path(@exam), :remote => true %>
rails會拋出無路由匹配錯誤,因爲@exam實際上還不存在。如果我用Exam.find(10)替換@exam,它將正常工作以生成考試10的鏈接。
理想情況下,我希望能夠根據需要儘可能多地提供AJAX。 正在創建像下面我一個問題,我能夠重新使用該代碼的AJAX調用:
<%= form.fields_for :questions do |f| %>
<div class="edit_questions">
<div class="exam_question">
<%= f.hidden_field :question_type %>
<%= f.label "Question" %><br/>
<%= f.text_field :copy %>
<div>
<% if !f.object.id.blank? %>
<%= link_to "Delete", exam_question_path(@exam, f.object), :method=>:delete, :class => "button" %>
<% end %>
</div>
</div>
</div>
<% end %>
你看過[這個Railscast](http://railscasts.com/episodes/196-nested-model-form-part-1)及其續集嗎? – bricker
我沒有,但會檢查出來。 Thx – gfroese
這兩個railscasts是無價的,我現在已經掌握了所有的工作。謝謝! – gfroese