Ruby 2.0
Rails 4.1
MySQL
我有以下型号:
Agent with the following fields:
id
name
并使用以下字段付款:
id
agent_id
amount
ActiveRecord语法是什么,用于获取付款大于零的唯一代理列表。我尝试了许多变体,但它们都产生了非唯一列表。
在agents.rb中,我有:
has_many :payments
在payments.rb中,我有以下内容:
belongs_to :agents
@agents = Agent.joins(:payments)
.where("payments.amount > 0")
.group("agents.id")
答案 0 :(得分:0)
这有用吗? (我的红宝石有点生锈)
Agent.all(:joins => :payments, :group => :id, :conditions => ["payment.amount > 0"] )