我有一个协会:
has_many :regions_deployed, -> { where(taggings: { scope: 'deployed' }) },
:through => :taggings, :source => :choice_filter, :source_type => "Region"
这通常有效,除非它在命名范围的joins
子句中使用,并链接到也加入taggings
的其他命名范围。然后Postgres将表名taggings
别名,但where(taggings: { scope: 'deployed' }
不反映该别名。如何在where
中指定动态表名?
我认为这个问题密切相关,但无法得到它:Join the same table twice with conditions