两种型号:
User has_one :location, as: locatable
Location belongs_to :locatable, polymorphic: true
到目前为止一切顺利。现在说我想找到一个具有特定名称和城市的用户:
User.joins(:location).where(name: 'Eddie Explosion', location: { city: 'Kaboom' })
......但当我跑步时,热潮,
ActiveRecord :: StatementInvalid:PG ::错误:错误:表“location”缺少FROM子句条目。
知道这里发生了什么/如何解决这个问题?似乎无法弄明白。
答案 0 :(得分:1)
我无法真正尝试你所拥有的确切案例,但我已经做了类似于你在我的应用程序中想要做的事情,下面是一个例子:
User.joins(:locations).where("users.name = 'Eddie Explosion' AND locations.city = 'Kaboom'")
干杯:))