0

인벤토리 관리 시스템의 시나리오 고려. 인벤토리에는 여러 유형의 항목이 있으며 각 항목에는 자체 테이블과 열이 있습니다. 1, 2 또는 12 개의 테이블은 매우 다양하기 때문에 많은 유형의 아이템을 설명하기에 충분하지 않습니다. 예 : BIKES와 같은 항목 군의 일부 속성에는 CARS와 동일한 속성이 없습니다. 개발자가 수천 가지 항목 유형을 고려하여 수동으로 각 모델에 통합하는 것은 지루합니다.Ruby on Rails 4에서 사용자 생성 모델 및 SQL 테이블 생성

사용자가 직접 모델을 생성 할 수있는 방법이 있습니까? 따라서 자신의 SQL 테이블 등 생성 ...이 문제에 대한 또 다른 접근법이 있습니까? (어쩌면 시맨틱 웹 기술 사용)

저는 스프링 프레임 워크에서 나온 RoR 개발을 처음 접했습니다.

미리 감사드립니다.

답변

0

저는 전문가는 아니지만 정기적 인 미리 정의 된 모델로 할 수 있습니다. Item_Type

  • Item_Attribute
  • Item
  • ITEM_TYPE은 (고유하지 않은) 이름 변수를 것

    • , 당신이 원하는 것, 아마도 다른 공통 속성. 그런 다음 has_many Item_Attributes 관계를 갖는 반면, Item_Attributebelongs_to Item_Type 관계를 갖습니다.

      그래서 사용자가 새로운 Item_Type을 추가 한 다음 해당 항목 유형에 Item_Attribute을 정의 할 수있는보기를 만들었습니다.

      그런 다음 실제 Item 모델을 가질 수 있으며 각 인스턴스는 인벤토리에 Item_Type이 존재합니다. ItemItem_Type에 속하고 Item_Typehas_manyItems에 속하며 Item은 null Item_Type을 가질 수 없습니다.

      따라서 사용자는 "BIKE"라는 이름으로 Item_Type을 새로 만든 다음 "Mountain"및 "Red"와 같이 여러 개의 Item_Attribute을 추가합니다. 그러면 사용자는 "BIKE"Item_Type과 관계가있는 새 Item을 만들 수 있습니다. 그들은 빨간색 한 대신 푸른 산 자전거를 추가하고 싶다면

      , 그들은 Item_Type의 새 인스턴스의 속성으로 "블루"를 추가 제외 "자전거"의 또 다른 Item_Type를 추가, 다시 절차를 통해 진행해야 할 필요가 있습니다 님의 Item_Attribute s.