Найти продавца продукта в Шпрее - PullRequest
0 голосов
/ 06 февраля 2020

Я использую spree, и мои ruby навыки не помогают мне. Каждый продукт имеет product property, где свойство имеет имя: Seller.

Вот карта модели:

Product has many ProductProperty

ProductProperty belongs_to Property

Product has many Property through ProductProperty

Я хочу сделать Product.includes(:seller), где продавец ProductProperty, где Property.name = 'Seller'

Моя неверная попытка сейчас:

base.has_one :seller, -> { joins(:properties).where(spree_properties: {name: 'Seller'}) }, inverse_of: :product, class_name: 'Spree::ProductProperty'

Редактировать: Примеры запросов, если код работал:

SELECT "spree_products".* FROM "spree_products" WHERE "spree_products"."deleted_at" IS NULL AND "spree_products"."id" = $1 LIMIT $2
SELECT "spree_product_properties".* FROM "spree_product_properties" INNER JOIN "spree_properties" ON "spree_properties"."id" = "spree_product_properties"."property_id" WHERE "spree_product_properties"."product_id" in [$1] AND "spree_properties"."name" = $2
...