gpt4 book ai didi

ruby-on-rails - 带分页的 Rails 随机事件记录

转载 作者:行者123 更新时间:2023-12-02 06:10:52 27 4
gpt4 key购买 nike

我需要找到特定资源的所有记录并以随机顺序显示它们,但分页一致(如果开始分页,您将不会看到相同的记录两次)。每次用户访问页面时,显示顺序应该是随机的。我正在使用 will_paginate .有什么建议吗?

最佳答案

在用户 session cookie 中存储一个随机数,然后将其用作数据库随机函数的种子。这将是相同的,直到用户关闭他们的浏览器,因此他们都会看到随机的、一致的记录:

获取一个大的随机数:

cookies[:seed] = SecureRandom.random_number.to_s[2..20].to_i

将此种子与例如MySQL:

SomeModel.all.order("RAND ?", cookies[:seed])

关于ruby-on-rails - 带分页的 Rails 随机事件记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2969158/

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