1

多くの関連付けを持つ取引モデルがあります。関連付けの 1 つに通貨があります。取引テーブルと通貨テーブルの両方に名前列があります。現在、次の 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 の誰かによると、ORM は十分に公正な属性 (またはそのようなもの) に列を割り当てる方法を知らないため、「as」の部分は正しくありません。attr_accessor 句と attr_accessible 句を追加しようとしましたが、機能しませんでした。

上記のクエリを機能させるにはどうすればよいですか? 私が期待する結果はdeal_namedeal_creation_date、などの仮想属性を持つ Deal オブジェクトの配列です。

4

1 に答える 1