无法获取link_to以处理嵌套资源

时间:2013-06-27 09:27:54

标签: ruby-on-rails ruby-on-rails-3

似乎有一些像这样的问题,但我已经阅读了所有这些问题,但他们没有帮助。

我在views/towns/index.html.haml

中有这个
= link_to "towns attractions", towns_attractions(town.id)

我在inspect上完成了town.id,而id是正确的。

我的路线似乎没问题,因为我可以去

http://127.0.0.1:3000/towns

我可以去

http://127.0.0.1:3000/towns/1/attractions

当我把link_to拿出来(因为它打破了)。

但是,我在index.html.haml

中收到此错误
undefined method `towns_attractions'

我尝试了多元化的所有组合而没有运气!

我的路线:

resources :towns do
    resources :attractions
end

rake routes:

 town_attractions GET    /towns/:town_id/attractions(.:format)     attractions#index
                         POST   /towns/:town_id/attractions(.:format)     attractions#create
  new_town_attraction GET    /towns/:town_id/attractions/new(.:format) attractions#new
               towns GET    /towns(.:format)                             towns#index
                         POST   /towns(.:format)                             towns#create
            new_town GET    /towns/new(.:format)                         towns#new
           edit_town GET    /towns/:id/edit(.:format)                    towns#edit
                town GET    /towns/:id(.:format)                         towns#show
                         PUT    /towns/:id(.:format)                         towns#update
                         DELETE /towns/:id(.:format)                         towns#destroy

我想要的只是http://127.0.0.1:3000/towns/1/attractions的链接,但1替换为town.id

1 个答案:

答案 0 :(得分:2)

towns_attractions应为town_attractions_path。就是这样。