Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/60.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 为什么此Rails视图中的编辑链接具有相同的id?_Ruby On Rails_View_Erb - Fatal编程技术网

Ruby on rails 为什么此Rails视图中的编辑链接具有相同的id?

Ruby on rails 为什么此Rails视图中的编辑链接具有相同的id?,ruby-on-rails,view,erb,Ruby On Rails,View,Erb,在此模型中,预定游戏和玩家是特许经营的嵌套资源,路由设置如下: OTH::Application.routes.draw do resources :franchises do resources :scheduled_games resources :players end 我可以正确地创建这些模型对象。但我一定是做错了什么,看起来是这样的: <% @franchise.scheduled_games.each do |game| %> <p c

在此模型中,预定游戏和玩家是特许经营的嵌套资源,路由设置如下:

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 %>

在以下情况下,您还需要指定
游戏


因为它们使用REST模式,所以如果要删除资源,可以将HTTP/delete请求用于与GET请求相同的url。

我尝试过(这是我尝试的第一件事),但遇到了路由错误。路由错误是什么?查看
rake routes
的输出可能会有所帮助。没有与{:action=>“edit”,:controller=>“scheduled_games”匹配的路由,:frances_id=>如果我直接输入/frances/1/scheduled_games/2/编辑url,我会得到正确的视图。我想我看到了问题的一部分,在路由错误的参数部分,我看到了#,@KevDog是从
@francement.schedule_games
加载的预定游戏吗?也就是说,它们有id吗?
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"}
edit_franchise_scheduled_game_path(@franchise, game)