0

如何通过 Record 模型获得产品重量?据我所知,可以获得特定记录的所有产品,但我无法找到获取特定产品重量的方法。

在此处输入图像描述

class User < ActiveRecord::Base
  has_many :eatings
end

class Eating < ActiveRecord::Base
  belongs_to :user
  has_many :records
end

class Record < ActiveRecord::Base
  belongs_to :eating
end

class Product < ActiveRecord::Base
end

class WeightedProduct < ActiveRecord::Base
end

Record 和 Product 模型应该与 WeightedProduct 有什么关系,以便用户能够通过一行 User.first.eatings.first.records.first.products.first.weight 获得某些产品的重量?

4

2 回答 2

1

看起来你在这个之后:

class Record < ActiveRecord::Base
  belongs_to :eating
  has_many :weighted_products
end

class Product < ActiveRecord::Base
  has_many :weighted_products
end

class WeightedProduct < ActiveRecord::Base
  belongs_to :record
  belongs_to :product
end

然后User.first.eatings.first.records.first.weighted_products.first.weight

我认为这应该有效,但尚未测试。

于 2012-08-29T16:36:39.897 回答
0

似乎每个产品都有一个加权产品,那么在这种情况下你应该添加

class Product < ActiveRecord::Base
 has_one :weighted_product
end


class WeightedProduct < ActiveRecord::Base
 belongs_to :product
end

 class Record < ActiveRecord::Base
  belongs_to :eating
  has_many :products 
 end
于 2012-08-29T16:47:15.547 回答