現在嘗試使這項工作大約12小時後,我不得不求助於救贖。這是場景。其他控制器中的Rails嵌套窗體對象
我正在使用zurb基礎4,並且試圖爲我的儀表板中的嵌套資源創建一個顯示模式ajax窗體。
我有以下嵌套的資源:在吸取/ 1 /筆記/新作精細
resources :lessons, only: [:index, :edit, :show] do
resources :notes, only: [:new, :create, :edit, :delete]
end
形式。
我有我的static_pages表/家像這樣:
<table>
<thead>
<tr>
<th>Student</th>
<th>Subject</th>
</tr>
</thead>
<% @lessons.each do |lesson| %>
<tr>
<td><%= link_to lesson.student.name, lesson %></td>
<td><%= lesson.subject.name %></td>
<td><%= link_to 'make a note', new_lesson_note_path(lesson), "data-reveal-id"=>"note-for" %></td>
</tr>
<% end %>
在所有我的標記,我已經在基礎下面的表格顯示模式:
<!--Reveal Form-->
<div id="note-for" class="reveal-modal">
<% @lessons.each do |lesson| %> <--form now associated with proper object-->
<%= form_for Note.new, :url => new_lesson_note_path(lesson) do |f| %>
<div class="field">
<%= f.label :content %>
<%= f.text_area :content %>
</div>
<div class="actions">
<%= f.submit "Save", class: "small button"%>
</div>
<% end %>
<a class="close-reveal-modal">×</a>
<% end %>
</div>
莫代爾呈現罰款,但提交表單卻拋出以下錯誤:
No route matches [POST] "/lessons/1/notes/new"
我在這裏很茫然,請幫助。
我實際上已經嘗試過這一點,沒有工作。不過好消息是我已經通過<%@ lessons.each do | lesson |來建立正確的關聯%>。請參閱編輯的代碼。現在唯一的問題是它會引發路由錯誤。我認爲(@lessons)正在將這種形式與一整套課程聯繫起來,而不僅僅是一個。 –
這裏有一些神奇的東西。我會在一個問題上花費數小時。放棄。請在SO上尋求幫助。只要我輸入問題,解決方案就會出現在我的腦海中。 –