私は 2 つのモデルを持っており、インデックス ビューでユーザーのクレジットを表示しようとしています。
class User < ActiveRecord::Base
has_many :credits
class Credit < ActiveRecord::Base
belongs_to :user
ユーザーの合計クレジットを index.html.erb ビューに表示しようとしています。ヘルパーメソッドを作成しました。
module UsersHelper
def designer_owed
designer_owed = Credit.where( :user_id => @user ).sum(:total_received)
end
私が得た結果は少し混乱しています。私は何か間違ったことをしていることを知っていますが、それを理解することはできません.
index.html.erb
<%= h number_to_currency(designer_owed, :unit => "$") %>
私はゼロを取得します。
しかし、私のshow.html.erbでは
<%= h number_to_currency(designer_owed, :unit => "$") %>
正しい合計を取得します。index.html.erb を使用してクエリを実行すると、SQL は次のようになります。
SELECT SUM("credits"."total_received") AS sum_id FROM "credits" WHERE "credits"."user_id" IS NULL
これをインデックスビューに表示したいと思います。