嵌套获取路线

时间:2015-04-27 17:01:08

标签: ruby-on-rails ruby-on-rails-4

我想在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

如何重构它?

2 个答案:

答案 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

我不确定你在问什么,但我认为你想通过卖出来分辨一下..对吗?