【发布时间】:2013-08-14 15:56:02
【问题描述】:
我收集了有帖子的用户,我想从所有用户那里获取所有帖子。有没有办法做这样的事情:
User.active.posts.unique.visible
active 和 visible 都是我自己写的特殊作用域。
【问题讨论】:
标签: sql ruby-on-rails database activerecord active-relation
我收集了有帖子的用户,我想从所有用户那里获取所有帖子。有没有办法做这样的事情:
User.active.posts.unique.visible
active 和 visible 都是我自己写的特殊作用域。
【问题讨论】:
标签: sql ruby-on-rails database activerecord active-relation
假设您的 posts 表中有 user_id 列:
Post.where(user_id: User.active.map(&:id)).visible
它将生成两个没有任何连接的 SQL 查询(除非您在 visible 范围内使用连接),因此这是一种非常有效的方法。
【讨论】: