gpt4 book ai didi

mysql - 在 Rails 中获得一个随机的、未投票的帖子

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

所以我有一个包含三个基本模型的 Rails 应用程序:EntryUserVote。我需要一个辅助方法,它会给我一个随机的帖子供用户投票:

def next_entry
Entry.where(:receiving_challenge_id => current_voting_challenge.id).offset(rand(Entry.where(receiving_challenge_id: current_voting_challenge.id).count)).first
end

这行得通,它每次都会抓取一个随机帖子。

投票由用户和条目拥有,它们通过数据库中的 ID 相关联。

但我不想向用户提供他们已投票的帖子。

我怎样才能做到这一点?

最佳答案

-获取所有条目的id

-获取用户投票的所有条目的id

-第一个减去第二个

-使用 sample 方法从该数组中取出任何数字,并从数据库中提取具有该 id 的条目:

Entry.find((Entry.all.collect(&:id) - current_user.votes.collect(&:entry_id)).sample)

关于mysql - 在 Rails 中获得一个随机的、未投票的帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15996499/

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