プロジェクト固有の質問があります。アプリでモデルを設定する最も効率的で論理的な方法を決定しようとしています。ここでモデル化する関連プレーヤーは、ベンダー、ベンダー インベントリ、および製品です。以下は、何らかの方法で各アイテムが何を返すことができるかの内訳です。
在庫: ストア ID 製品と関連する詳細 (価格、名前、ブランド、詳細、製品コード)
ベンダー: 店舗 ID、場所、名前
製品: 価格、名前、ブランド、詳細、製品コード
明らかに、このスキームには製品と在庫の間で多くの重複があります。私の問題は、ベンダーが在庫に同様のアイテムを持っている可能性がありますが、価格は常に異なるということです. したがって、単純にモデルを製品コードで関連付けることはできません。ほとんどのベンダーは同じ製品を扱っているため、店舗の在庫をすべての製品情報でモデル化すると、多くの重複が発生するのではないでしょうか? また、ベンダー用に別のモデルを用意する必要がなく、すべての在庫を保持しようとすることもできますが、迷っています。助けてください?!前もって感謝します。
編集:
これが私のモデル構造ですが、理想的かどうかはわかりません。
class Vendor < ActiveRecord::Base
attr_accessible :name, :address
has_one :inventory
has_many :products, through: :inventories
end
class Inventory < ActiveRecord::Base
has_many :products
belongs_to :vendor
end
class Product < ActiveRecord::Base
attr_accessible :upc, :brand, :product, :details, :price
has_many :inventories
has_many :vendors, through: :inventories
end