Я пытаюсь создать связь между двумя моделями, используя условия соединения, а не внешний ключ. Кто-нибудь знает возможно ли это?Как указать условия соединения в Rails для bind_to для объединения?
Например, я хочу присоединиться к продуктам в точках оценки. У продукта есть цена, а точка ценообразования имеет минимальную и максимальную сумму и имя. Например. Min = 0, Max = 20, Name = Менее 20 долларов США. Связь между продуктом находится по цене, а мин и макс.
SELECT *
FROM products
INNER JOIN pricing_points
ON pricing_points.minimum < products.price AND pricing_points.maximum >= products.price
Имеет ли это смысл? Так что я хочу что-то подобное в моей модели:
class Product < ActiveRecord::Base
belongs_to :pricing_point, :join => "INNER JOIN pricing_points ON pricing_points.minimum < products.price AND pricing_points.maximum >= products.price"
...
end
Заранее спасибо за вашу помощь,
Caps
Да, я думал, что это может быть так. Я хотел сопоставить ассоциацию, потому что я использую Thinking Sphinx, и я хотел бы использовать ассоциацию в моем индексе поиска. Спасибо за вашу помощь. – Caps