0
我想要做這樣的事情:動態ActiveRecord關聯(基於另一個模型)
class Store < ApplicationRecord
Product.select(:category).distinct do |p|
has_one "lowest_"+p.category+"_price".to_sym, -> { where(category: p.category).order(price: :asc) }, class_name: "Product"
end
end
但軌道似乎忽視了線的存在。當我用硬編碼數組替換Product.select(:category).distinct
時,它工作正常,但它不是動態的。
我想這是某種初始化問題,但有沒有解決方案?我在想我可以寫一個初始化器,但我不確定如何在類創建後應用關聯。可能只是一個紅寶石答案?
這工作,但什麼是我的查詢做什麼?我以爲它是返回產品實例,我正在調用'p.category'來獲取類別字符串。 – Colin
更多調查,看起來像字符串插值是我的大錯。不知道爲什麼我以前沒有看到錯誤...它將「_price」轉換爲符號並失敗。 – Colin