Ruby on rails 3 Rails<;ol>;使用Kaminari在每页重置数字
有一个类似于HackerNews的新闻故事显示,它使用Ruby on rails 3 Rails<;ol>;使用Kaminari在每页重置数字,ruby-on-rails-3,pagination,will-paginate,kaminari,Ruby On Rails 3,Pagination,Will Paginate,Kaminari,有一个类似于HackerNews的新闻故事显示,它使用标记进行编号和投票排名。当尝试使用Kaminari gem分页时,每页每篇文章的编号都会重置为1-20 我已经尝试使用CSS计数器重置和计数器增量,但我还不能让它工作。我还尝试为每个页面手动添加计数器重置,但如果站点以某种方式看到超过5个页面,我将不得不手动编码增量,这是不可能的 我想知道是否有js解决方案 以下是我的故事\u控制器的索引方法: def index if params[:sort] && params[
标记进行编号和投票排名。当尝试使用Kaminari gem分页时,每页每篇文章的编号都会重置为1-20
我已经尝试使用CSS计数器重置和计数器增量,但我还不能让它工作。我还尝试为每个页面手动添加计数器重置,但如果站点以某种方式看到超过5个页面,我将不得不手动编码增量,这是不可能的
我想知道是否有js解决方案
以下是我的故事\u控制器的索引方法:
def index
if params[:sort] && params[:sort].to_sym == :newest
@stories = Story.order("created_at DESC").page(params[:page]).per(20)
else
@stories = Story.order('karma DESC').page(params[:page]).per(20)
end
end
%ol
- @stories.each do |story|
= render partial: 'story', locals: { story: story, tag_type: :li }
= paginate @stories
下面是我的故事index.html.haml:
def index
if params[:sort] && params[:sort].to_sym == :newest
@stories = Story.order("created_at DESC").page(params[:page]).per(20)
else
@stories = Story.order('karma DESC').page(params[:page]).per(20)
end
end
%ol
- @stories.each do |story|
= render partial: 'story', locals: { story: story, tag_type: :li }
= paginate @stories
以及\u story.html.haml部分内容:
= content_tag defined?(tag_type) ? tag_type : :div, class: 'story' do
= link_to "⇧", upvote_story_url(story), class: 'upvote', method: :post
%div
.title
= link_to story.title.titlecase, story.url
%span.link-domain (#{story.url_domain})
.metadata
= statusline story
|
= link_to 'comments', story, class: 'comments-link'
= "(#{story.comments.all.count})"
最后是我的相关CSS:
ul, ol {
margin: 0 1.5em 1.5em 0;
padding-left: 2.0em;
counter-reset: section;
li {
margin: 10px;
}
}
li {
float: top;
counter-increment: section;
}
提前感谢您的任何帮助或新想法
编辑:
通过取出Ordered List标记并切换到列表样式类型设置为none的无序列表来移除项目符号,修复了此问题
以下是我在haml视图中使用的代码:
- if params[:page].nil? || params[:page] == "0" || params[:page] == "1"
- x = 0
- else
- page = params[:page].to_i - 1
- x = page * 15
- @stories.each_with_index do |story, index|
= content_tag defined?(tag_type) ? tag_type : :div, class: 'story' do
%li
.title
.story_number
= index + x + 1
= etc...
修复了上面编辑中的问题