【发布时间】:2019-12-26 14:28:16
【问题描述】:
我想按每个用户显示@amount_spent 和@amount_received。我已经用@amount_spent = Reservation.where(user_id: @user.id).sum(:total)完成了第一部分
现在我还想显示@amount_received,因为我使用的是 Stripe Connect。
我尝试过类似的方法:
@user = User.find(params[:id])
@products = @user.products
@amount_received = @products.reservations.sum(:total)
但是当我尝试将reservations 与@products 一起使用时,我收到#<Product::ActiveRecord_Associations_CollectionProxy:0x00007f50b8709fa8> 错误。
是否有更好的方法或其他方法,可能使用范围?
用户模型:
has_many :products
has_many :reservations
产品型号:
has_many :reservations
预留模式:
belongs_to :user
belongs_to :product
【问题讨论】:
-
请向我们展示模型关系或相关架构部分。
-
我添加了模型关系。
标签: ruby-on-rails ruby join activerecord