我有一个product
表,它列出了用户创建的所有产品。产品表中有country
,表示产品的原产地。现在,为了使产品国家/地区可见,用户表必须具有merchant status
,即1。
以下代码用于从产品表中提取国家/地区:
@countries = Product.select(:country).distinct.where("country is not null and country <> ''").pluck(:country)
产品型号:
class Product < ActiveRecord::Base
belongs_to :user
end
用户型号:
class User < ActiveRecord::Base
has_many :products
end
我如何修改上面的代码,使其在用户表中包含merchant_status
?意味着我只需要在用户表中列出merchant_status = 1
的国家。谢谢
您可以尝试以下方式:
Product.joins(:user).where("country is not null and country <> ''").where(:users => {:merchant_status => 1}).pluck(:country)