ruby-on-rails 我需要获取所有的内容,其中有内容设置和不

mklgxw1f  于 2023-07-01  发布在  Ruby
关注(0)|答案(2)|浏览(116)

我需要使用两个includes方法获取所有有内容设置没有的内容。contentSetting表中有一个与content_id和编辑器类型的关联。
我之前已经用左外连接完成了,但是我必须用includes完成。

contents = Content.all
contents = contents
  .left_outer_joins(:content_setting)
  .where('content_settings.editor_type = ? OR content_settings.id IS NULL', '0')

但是我想使用includes方法执行这个查询。

ltskdhd1

ltskdhd11#

我认为references应该在这种情况下有所帮助:

Content
  .includes(:content_setting)
  .references(:content_settings)
  .where('content_settings.editor_type = ? OR content_settings.id IS NULL', '0')
bvk5enib

bvk5enib2#

baseq = Content.includes(:content_setting)
baseq.where.missing(:bars).or(baseq.where(content_settings: { editor_type: 0 }))

相关问题