我有一个名为Book的模型和书籍has_many
页面(Page.rb - model)。基本上,我正在尝试重新创建包含内容的书籍,并且可以使用<%= link_to_next_page @pages, 'Next Page' %>
和{}浏览每个页面
上一页辅助方法。我正在使用@pages = @book.pages.page(params[:page]).per(1)
渲染一个页面,如kaminari github页面所述。此外,我正在使用book和Page模型的friendly-id gem。
网址的呈现方式如下: -
localhost:3000/tutorials/create-a-book/pages/introduction?&page=1
,下一页链接如下: -
localhost:3000/tutorials/create-a-book/pages/introduction?&page=2
我希望链接显示为: -
localhost:3000/tutorials/create-a-book/pages/introduction
和下一页如: -
localhost:3000/tutorials/create-a-book/pages/getting-started
我尝试按照Kaminari Github Page - Creating friendly URLs and caching给出的说明但无法理解,因为我无法理解路由部分。我也搜索了维基,但无法找到与上述问题有关的任何内容。
答案 0 :(得分:0)
使用Kaminari你可以拥有
localhost:3000/tutorials/create-a-book/pages/introduction?&page=1
localhost:3000/tutorials/create-a-book/pages/introduction?&page=2
或
localhost:3000/tutorials/create-a-book/pages/introduction/page/1
localhost:3000/tutorials/create-a-book/pages/introduction/page/2
这就是Kaminari可以为你做的一切。 Kaminari无法猜出你想如何命名每一页。而且,据我所知,Kaminari不支持命名页面。 (&#34;页面&#34;我所指的是由分页生成的页面。在您的示例中,您还有一个名为&#34; Page&#34;的模型,我建议您不要使用相同的名称两个不同的东西!)
要拥有你想要的东西,你必须正确地路由它(guide)并自己在视图中链接它。