我有一个由kaminari paginate
生成的url案例,因为url取决于条件。这是我的路线
concern :search do
scope '/search', as: :search do
get '/', to: 'users#search'
get '/schedule/:id', to: 'schedules#doctor', as: :schedule
end
end
concerns :search
scope :dashboard, as: :dashboard do
concerns :search
end
如你所见,:search
可以通过/search
和/dashboard/search
访问。问题是,paginate @doctors
给/search
,基本上将去search_path
,即使我在dashboard_search_path
(它应该给/dashboard/search
路径)。
我的问题是,如何将自定义路径传递给paginate
?当我打开paginate
时,我希望search_path
使用/search
打开dashboard_search_path
并使用/dashboard/search/path
。
你不必提供如何决定/search
或/dashboard/search
,我只需要知道如何将它作为参数传递给paginate
。钽
Kaminari接受paginate的参数,其中一个是链接的params
。它与rails中的url_for
相同。没有测试它,但尝试仪表板页面,应该工作。
paginate @doctors, params: { script_name: "/dashboard" }
来自url_for
的文档:
:script_name - 指定相对于域根的应用程序路径。如果提供,则预先设置应用程序路径。