0
我正試圖找到一種在範圍內設置虛擬屬性的方法。背景是我有客戶誰屬於帳戶。客戶可以購買銷售項目。我有一張表customers_salesitem,顯示哪些客戶過去曾購買過哪些產品。在範圍中設置虛擬屬性
我想要生成一個salesitems列表,其中包含一個額外字段'category',用於將銷售項目分類爲由客戶購買的產品,由不同客戶從同一個帳戶購買的產品以及那些帳戶中的任何人都沒有購買。最終,我想將範圍用於自動填充字段,但目前有點關閉。儘管SQL正確生成範圍沒有類別返回一個項目列表
class Salesitem < ActiveRecord::Base
has_many :customers_salesitems
scope :previous_customer_purchase, lambda {
|customer|
select("*").
select("'Previous Customer Purchase' as category").
where ("salesitems.id IN (SELECT customers_salesitems.salesitem_id FROM customers_salesitems WHERE customer_id = ?)",
customer.id)
}
def category
@category
end
def category=(value)
@category = @attributes["category"] = value
end
end
:
我已經嘗試了一些東西的線沿線。