gpt4 book ai didi

ruby-on-rails - will_paginate 和 .sort =>

转载 作者:太空宇宙 更新时间:2023-11-03 17:25:02 25 4
gpt4 key购买 nike

我最近安装了 will_paginate gem,它运行良好,但我希望它能与我当前的设置一起使用。现在我在同一页面上显示所有提要(或帖子),但它们是根据点击该页面的人数排序的:

Controller .rb

 @t = Time.now
@h1 = @t - 1.hour
@feeds = Feed.find(:all, :order => "created_at DESC").sort { |p1, p2| p2.impressionist_count(:filter=>:all, :start_date=>@h1) <=> p1.impressionist_count(:filter=>:all, :start_date=>@h1)}

现在...我测试了分页 gem,如果我在 Controller 中执行此操作,它会正常工作:

Controller .rb

 @feeds = Feed.paginate(:per_page => 10, :page => params[:page], :order => "created_at DESC")

所以我认为 1+1=2 并尝试通过以下方式将两者结合起来:

Controller .rb

@feeds = Feed.paginate(:per_page => 10, :page=>params[:page], :order => "created_at DESC").sort { |p1, p2| p2.impressionist_count(:filter=>:all, :start_date=>@h1) <=> p1.impressionist_count(:filter=>:all, :start_date=>@h1)}

我无法对帖子进行排序和分页。当我尝试加载页面时出现错误:

# 的未定义方法“total_pages”

我希望它能工作,它会非常棒 :)。但是,如果它不起作用,还有其他方法吗?

提前致谢!

最佳答案

这是因为 will_paginate 默认只在 ActiveRecord 关系上工作。使用排序后,它会转换为数组。如果您希望 will_paginate 使用数组,您需要在 Controller 中要求支持它。

require 'will_paginate/array' 

关于ruby-on-rails - will_paginate 和 .sort =>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14552999/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com