0

私はRails 4.2Chartkick & GroupDate gemsを使用しています。購入注文に関する統計情報を表示します。レコードを関連名でグループ化する方法は?

order.rb

class Order < ActiveRecord::Base 
    ... 
    has_many :ice_creams 
    ... 
    end 

ice_cream.rb

class IceCream < ActiveRecord::Base 
    ... 
    has_and_belongs_to_many :flavors 
    has_many :added_extras 
    has_many :extras, :through => :added_extras 
    belongs_to :order 
    ... 
    end 

extra.rb

class Extra < ActiveRecord::Base 
    ... 
    has_many :added_extras 
    has_many :extras, :through => :added_extras 
    ... 
    end 

私の意図は、ジにしましたエキストラの名前によってグループ化された全体的な購入受注の

カウントまたはアイスCreames:以下を示すチャートをスプレイ。

別の表現では、最後の図は、最も一般的なエクストラお客様の消費を表示することを意図しています。

<%= line_chart IceCreams.all.joins(:added_extras).group(:extra_id).count %> 

graphs.html.erbチャートは実際に動作しますが、私は「それはエクストラ名前でエクストラ名、あるいはグループを表示するために取得傾けます。

 Chart indexes **Extras** by its ID

とにかく私の質問ではなく、IDのエクストラ名を表示できるようにするにはどのように...

  • のですか?

答えて

1

AddedExtraテーブルを使用してExtraテーブルに参加できます。以下を試してください:

IceCreams.joins(added_extras: :extra).group('extras.name').count 
+0

ありがとう、あなたは私を救った。あなたはリファレンスやドキュメントを提供できますか? –

+1

このRailsガイドページの第12章「テーブルの結合」を参照してください。 http://guides.rubyonrails.org/active_record_querying.html – YTorii

関連する問題