相关疑难解决方法(0)

Rails中的浅路由3

在我的rails 3应用程序中使用我的路线时,我希望有这样的浅路线:

/san-francisco/union-square
Run Code Online (Sandbox Code Playgroud)

但我的路由器坚持让他们这样:

/cities/san-francisco/neighborhoods/union-square
Run Code Online (Sandbox Code Playgroud)

我用它来做我的 routes.rb

shallow do
  resources :cities do
    resources :neighborhoods do
      resources :locations
    end
  end
end
Run Code Online (Sandbox Code Playgroud)

但我仍然有这个:

city_neighborhood_locations GET  /cities/:city_id/neighborhoods/:neighborhood_id/locations(.:format)
Run Code Online (Sandbox Code Playgroud)

不应该看起来像:

city_neighborhood_locations GET  /:city_id/:neighborhood_id/:id(.:format)
Run Code Online (Sandbox Code Playgroud)

我不知道如何解决这个问题,另外我不确定我的链接是什么问题,我希望能够使用语法:

link_to neighborhood.name, [:city, neighborhood]
Run Code Online (Sandbox Code Playgroud)

但这似乎颠倒了:id,:neighborhood_id当请求到达控制器时,对此的任何帮助真的会非常有用!

ruby-on-rails

3
推荐指数
1
解决办法
2287
查看次数

标签 统计

ruby-on-rails ×1