프로젝트 관련 질문이 있습니다. 내 응용 프로그램에서 내 모델을 설정하는 가장 효율적이고 논리적 인 방법을 결정하려고합니다. 벤더, 벤더 인벤토리 및 제품에 대한 모델링 관련 플레이어가 있습니다.데이터 모델링 구조 - 레일
재고 : 상점 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
일부 샘플 모델 코드를 붙여 넣으면 문제를 더 쉽게 볼 수 있습니다.즉, 공급 업체와 제품이 많은 관계가 있음을 이해하는 것으로부터 예. 이는 조인 테이블이 있다는 것을 의미합니다. 조인 테이블에 가격을 넣을 수 있으므로 중복 제품이없고 공급 업체마다 고유 한 가격이 부여됩니다. 상황에 따라 아마도 인벤토리를 없앨 수도 있고, 조인 테이블 인벤토리를 호출 할 수도 있습니다. 도움이되기를 바랍니다. – Saifis
아직 샘플 코드가 없습니다. 나는 문제를 조금 더 개념적으로 이해할 수있을 때까지 아무 것도 생성하기를 기다리고 있었다. 조인 테이블에 대한 팁 주셔서 감사합니다. 몇 가지 검색을 수행하고 ActiveRecord 연관성에 대한 훌륭한 문서를 발견했습니다. 우리는 그것이 어디서 일어나는 지 알게 될 것입니다. – settheline