gpt4 book ai didi

activerecord - 如何使用 Rails 3 范围过滤不存在​​关联记录的 habtm 连接表?

转载 作者:行者123 更新时间:2023-12-03 23:25:19 26 4
gpt4 key购买 nike

我有一个 Author habtm :feeds 的模型。使用 Rails 3 想要设置一个范围来查找所有没有关联提要的作者。

class Author < ActiveRecord::Base

has_and_belongs_to_many :feeds
scope :without_feed, joins(:feeds).where("authors_feeds.feed_id is null")

end

......似乎不起作用。感觉是一件很简单的事情。我在这里缺少什么?

最佳答案

据我所知,ActiveRecord/Arel 没有定义外连接的方法。因此,您必须编写比平时多一点的 SQL。像这样的事情应该可以解决问题:

    scope :without_feed, joins('left outer join authors_feeds on authors.id=authors_feeds.author_id').where('authors_feeds.feed_id is null')

我当然在猜测你的表名和外键。但这应该给你图片。

关于activerecord - 如何使用 Rails 3 范围过滤不存在​​关联记录的 habtm 连接表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3875564/

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