我有这条路线:
put 'workstations' => 'workstation#update'
我打算与此链接匹配:
link_to "Update", controller: "workstations", action: "update", :method => :put
但是我收到了这个错误,我不知道为什么:
No route matches {:controller=>"workstations", :action=>"update", :method=>:put}
我如何建立路线,为什么不是我指定的工作?
答案 0 :(得分:1)
可能是拼写错误。
您写道:
put 'workstations' => 'workstation#update'
但控制器名称应为复数,如:
put '/workstations' => 'workstations#update'
此外,您始终可以运行rake routes
并获取应用中生成的路线和路线名称列表。
顺便说一句,您可以通过以下更优雅的方式实现相同的路线生成:
resource :workstations, only: :update