【问题标题】:Rails, ActiveRecord, has_many :through: find all records for which there is no AssociationRails, ActiveRecord, has_many :through: 查找所有没有关联的记录
【发布时间】:2013-12-20 06:53:32
【问题描述】:

我有一个典型的 has_many :通过 Menu 和 Section 之间的关系,称为 Sectionalization。部分继续菜单。有些部分没有菜单。

我需要所有没有具有匹配 section_id 的分段记录的部分记录的集合(没有其他菜单上的部分)。

【问题讨论】:

    标签: ruby-on-rails activerecord has-many-through


    【解决方案1】:

    据我所知,这需要外连接,而外连接又要求您使用自己的 SQL 片段指定它,如下所示:

    Section.joins('LEFT OUTER JOIN sectionalizations on sections.id = sectionalizations.section_id).where('sectionalizations.section_id IS NULL)

    【讨论】:

    • 就是这样!我不能投票。没有名声。不过谢谢。
    • @jessefarmer 虽然您不能投票,但您可以通过单击投票箭头下方的空心复选标记“接受”。
    猜你喜欢
    • 2011-02-17
    • 1970-01-01
    • 1970-01-01
    • 2013-05-30
    • 2018-09-02
    • 1970-01-01
    • 2014-12-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多