我想在Point
块中嵌套get
。所以我有以下路线:
resources
和
/businesses/page/:page
但我无法弄清楚如何使其发挥作用。这是我的路线:
/businesses/sold/page/:page
我如何使它工作?
的更新:
我希望上面的路线有效。根据我目前的代码,我不会得到concern :pageable do
get 'page/:page', action: 'index', on: :collection
end
resources :businesses, only: [:index, :show] do
concerns :pageable
get 'sold', action: 'sold', on: :collection, as: 'sold' do
get 'page/:page', action: 'sold'
end
end
。它们未列在/businesses/sold/page/:page
:
rake routes
我在路线中使用 GET /businesses/page/:page(.:format) businesses#index
sold_businesses GET /businesses/sold(.:format) businesses#sold
businesses GET /businesses(.:format) businesses#index
business GET /businesses/:id(.:format) businesses#show
进行分页。我想在所有这些路线上只使用一个控制器 - page
。
UPDATE2: 我设法获得了我需要的路线,但这段代码看起来很难看:
BusinessesController
如何重构它?
答案 0 :(得分:1)
想要DRYing的命名空间,但看起来这样效率更高。
resources :businesses do
get 'page/:page', on: :collection, action: :index
get 'sold/page/:page', on: :collection, action: :index
end
答案 1 :(得分:0)
resources :businesses do
concerns :pageable do
collection do
get: 'sold'
end
end
end
我不确定你在问什么,但我认为你想通过卖出来分辨一下..对吗?