gpt4 book ai didi

ruby-on-rails - Rails - 我如何做这个查询?获取每条记录之一

转载 作者:行者123 更新时间:2023-11-29 12:47:10 24 4
gpt4 key购买 nike

我有一个带有 :category 属性的 BlogPost 模型。我正在制作一个新的 BlogPost 表单,我希望选择菜单能够使用用户在之前记录中输入的每个类别来填充自身。

因此,我需要一个查询来查找所有具有 User IDBlogPosts,然后汇总他们输入的每个类别的列表。相同的类别将存在于多个记录中,但当然我只想为选择菜单返回它的副本。

谢谢你:)

最佳答案

您可以SELECT DISTINCT 类别将INNER JOIN 返回给正确的用户:

Category
.joins( :posts )
.where( posts: { user_id: current_user.id } )
.uniq

这应该发送这样的查询:

SELECT DISTINCT categories.*
FROM categories
INNER JOIN posts ON posts.category_id = categories.id
WHERE posts.user_id = [whatever]

编辑注意:请注意uniqRelationArray 上的方法。确保在将关系转换为数组之前调用它,否则您将对一组非不同结果执行 uniq,这也有效,但在性能方面是荒谬的。

关于ruby-on-rails - Rails - 我如何做这个查询?获取每条记录之一,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14540926/

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