【发布时间】:2011-12-01 16:50:04
【问题描述】:
在此模型中,预定游戏和玩家是特许经营的嵌套资源,路由设置如下:
OTH::Application.routes.draw do
resources :franchises do
resources :scheduled_games
resources :players
end
我可以正确地创建这些模型对象。但我一定是在视图中做错了什么,看起来像这样:
<% @franchise.scheduled_games.each do |game| %>
<p class="games">
<span class="date">
<b>Opponent:</b> <%= game.opponent %>
<b>date:</b> <%= game.date %>
<%= link_to 'Edit',edit_franchise_scheduled_game_path(@franchise) %>
</span> </p>
<% end %>
显示此视图时有两个问题。最糟糕的是,每个编辑链接对于嵌套资源 (/franchises/1/scheduled_games/1/edit) 都有相同的 id,即使该项目的其他信息是正确的。
二是总是显示空白记录。
我哪里做错了?
更新这是 rake 路由的输出:
franchise_scheduled_games
GET /franchises/:franchise_id/scheduled_games(.:format) {:action=>"index", :controller=>"scheduled_games"}
POST /franchises/:franchise_id/scheduled_games(.:format) {:action=>"create", :controller=>"scheduled_games"}
new_franchise_scheduled_game
GET /franchises/:franchise_id/scheduled_games/new(.:format) {:action=>"new", :controller=>"scheduled_games"}
edit_franchise_scheduled_game
GET /franchises/:franchise_id/scheduled_games/:id/edit(.:format) {:action=>"edit", :controller=>"scheduled_games"}
franchise_scheduled_game
GET /franchises/:franchise_id/scheduled_games/:id(.:format) {:action=>"show", :controller=>"scheduled_games"}
PUT /franchises/:franchise_id/scheduled_games/:id(.:format) {:action=>"update", :controller=>"scheduled_games"}
DELETE /franchises/:franchise_id/scheduled_games/:id(.:format) {:action=>"destroy", :controller=>"scheduled_games"}
franchise_players
GET /franchises/:franchise_id/players(.:format) {:action=>"index", :controller=>"players"}
POST /franchises/:franchise_id/players(.:format) {:action=>"create", :controller=>"players"}
new_franchise_player
GET /franchises/:franchise_id/players/new(.:format) {:action=>"new", :controller=>"players"}
edit_franchise_player
GET /franchises/:franchise_id/players/:id/edit(.:format) {:action=>"edit", :controller=>"players"}
franchise_player
GET /franchises/:franchise_id/players/:id(.:format) {:action=>"show", :controller=>"players"}
PUT /franchises/:franchise_id/players/:id(.:format) {:action=>"update", :controller=>"players"}
DELETE /franchises/:franchise_id/players/:id(.:format) {:action=>"destroy", :controller=>"players"}
【问题讨论】:
标签: ruby-on-rails view erb