0

我已经在我的 Rails 应用程序中为现有的脚手架模型手动创建了一个新视图,因为我认为这就是重点,我可以为同一个模型创建多个视图。一切似乎都运行良好,除了当我尝试链接到视图中的一个项目时,Rails 给了我错误的 URL。

  • routes.rb 有正确的“资源:控制器”
  • controller_controller.rb 存在并且工作正常
  • views/controller/show.html.erb 存在并且工作正常
  • 链接到“控制器”,控制器路径#工作正常

link_to "controller", controller_path(object) # 链接到控制器,但将 id 添加为 ".id" 而不是 "/id"

任何想法为什么?

rake 路由输出

pups     GET /pups(.:format)          {:action=>"index", :controller=>"pups"} 
         POST /pups(.:format)         {:action=>"create", :controller=>"pups"} 
new_pup  GET /pups/new(.:format)      {:action=>"new", :controller=>"pups"} 
edit_pup GET /pups/:id/edit(.:format) {:action=>"edit", :controller=>"pups"}
pup      GET /pups/:id(.:format)      {:action=>"show", :controller=>"pups"} 
         PUT /pups/:id(.:format)      {:action=>"update", :controller=>"pups"} 
         DELETE /pups/:id(.:format)   {:action=>"destroy", :controller=>"pups"}
4

1 回答 1

0

确保您的 link_to 正在使用pup_path(object)而不是pups_path(object)(复数)。

于 2011-02-27T05:45:16.860 回答