Rails - 新路径不起作用。为什么?

时间:2012-06-21 10:47:59

标签: ruby-on-rails routing

我需要像photos/13/rate =>这样的网址我创建了以下路由规则:

match 'photos/:id/rate' => 'photos#rate'

在这种情况下,我会假设这条道路:

link_to 'Rate', rate_photos_path(@photo)

但我仍然收到错误消息

undefined method `rate_photo_path' for #<#<Class:0x0000012aa18170>:0x0000012aa14520>

我试图打印出rake:routes,但声明只是

                       /photos/:id/rate(.:format)                    photos#rate

没有路径。

在这种情况下出了什么问题?

1 个答案:

答案 0 :(得分:1)

试试这个:

resources :photos do
  member do
    get 'rate'
  end
end

或者您需要为路线命名。

match 'photos/:id/rate' => 'photos#rate', :as => :rate_photo