【问题标题】:How to limit number of records on right side of join using activerecord如何使用activerecord限制连接右侧的记录数
【发布时间】:2011-08-08 19:54:22
【问题描述】:

我想列出数据库中的所有用户。对于每个用户,我还想在该用户的图库中显示 3 个顶部图像。我想避免为每个用户单独查询以获取用户的前 3 张图片。

是否有一种不需要进入 SQL 特定语法的 activerecord-y 方式来执行此操作?

【问题讨论】:

    标签: ruby-on-rails activerecord join limit


    【解决方案1】:

    您可以使用包含。如果轨道 2:

    User.find(:all, :include => :images)
    

    轨道 3

    User.include(:images)
    

    现在,您可以在单个查询中为每个用户获取所有用途的图像。

    【讨论】:

    • 但这不会给我基本上所有用户的所有图像吗?我只需要每个用户的前 3 名。有没有办法限制每个用户的图像结果?
    猜你喜欢
    • 2016-07-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-19
    • 1970-01-01
    相关资源
    最近更新 更多