我有一个有很多关联的交易模型。关联之一是货币。交易表和货币表都有一个名称列。现在,我有以下 ActiveRecord 查询:
Deal.
joins(:currency).
where("privacy = ? or user_id = ?", false, doorkeeper_token.resource_owner_id).
select("deals.name as deal_name, deals.date as deal_creation_date, deals.amount as deal_amount, currencies.name as currency_name, currencies.symbol as currency_symbol")
这个查询不起作用,它的结果是一个没有属性的 Deal 对象数组。根据 IRC 上的某个人的说法,“as”部分是不正确的,因为 ORM 不知道如何将列分配给哪个属性(或类似的东西)足够公平。我尝试添加 attr_accessor 和 attr_accessible 子句,但没有奏效。
请问我怎样才能使上述查询工作?我期望的结果是一个具有 , 等虚拟属性的 Deal 对象deal_name
数组deal_creation_date
。