0
私はこのURLに移動しよう:http://localhost:3000/lessons/18/pages
、私はこのエラーを取得していない:Noルートマッチ{:アクションは=> "ショー"、:コントローラ=> "ページ"}
No route matches {:action=>"show", :controller=>"pages", :lesson_id=>#<Page id: 5,
title: "Page One", page_num: 1, lesson_id: 18, stats_id: nil, sources_id: nil,
created_at: "2012-04-06 04:55:39", updated_at: "2012-04-06 04:55:39">}
私は2つのテーブルを持っています:レッスン、ページ
has_many :pages
lessons.rb
page.rb
belongs_to :lessons
<% @lesson.pages.each do |page| %>
<tr>
<td><%= page.title %></td>
<td><%= page.page_num %></td>
<td><%= page.lesson_id %></td>
<td><%= page.stats_id %></td>
<td><%= page.sources_id %></td>
<td><%= link_to 'Show', lesson_page_path(page) %></td>
<td><%= link_to 'Edit', edit_page_path(page) %></td>
<td><%= link_to 'Destroy', lesson_page, confirm: 'Are you sure?', method: :delete %></td>
</tr>
<% end %>
そして、ここでは、ページのコントローラである:
def index
@lesson = Lesson.find(params[:lesson_id])
respond_to do |format|
format.html # index.html.erb
format.json { render json: @pages }
end
end
はなぜshow
ルートが機能していない
routes.rbを
resources :lessons do
resources :pages
end
は、ページのインデックスは次のようになりますか?あなたは、ルート内のすべてのオブジェクトを渡す必要があるネストされたリソースのルートで
ルートファイルが表示されますか? –
'rake routes'コマンドの出力は何ですか(これはRailsが持っているすべてのルートを表示します)。 – jefflunt