我试图将分页链接到我的嵌套路由而不是常规的帖子变量。我知道我应该传递一些参数来分页,但我不知道如何传递它们。
基本上有一个数组存储在@posts
其中,另一个参数 paginate 可以访问 is category_id
。
嵌套路由是/category/1/posts
,但点击 next 和 previous on 将分页返回一个这样的 url posts?page=1&category_id=7
。
<%= will_paginate @most_recent_posts "What do I do here?" %>
这是 Yannis 回答的结果:
在您的控制器中,您可以执行以下操作:
@posts = @category.posts.paginate
在您看来:
<%= will_paginate(@post) %>
这样做会出现以下 URL
posts?page=2&post_category_id=athlete_management
routes.rb #还有更多路线,但这些是相关的
map.resources :posts
map.resources :post_categories, :has_many => :posts
解决方案
map.resources :post_categories do |post_category|
post_category.resources :posts
end
map.resources :posts
必须在块之后声明资源
谢谢斯蒂芬!