많은 종류의 "요청"이있는 응용 프로그램을 설계하고 있습니다. 요청은 서로 매우 유사한 성격으로 처리되지만 서로 다른 데이터를 포함합니다.다른 속성을 가진 유사한 모델의 레일 데이터베이스 디자인
그들은 각각 약 1/3 정보의 같은 날짜, 사용자 정보 요청
그러나 다른 종류의 완전히 다른 정보를 등이 있고, 요청이 데이터베이스에 약 30 열을 가질 수 있습니다.
즉.
Form A
Date Submitted
User
Email
Provider
Attribute A
Attribute B
Attribute C
Attribute D
는
Form A
Date Submitted
User
Email
Provider
Attribute E
Attribute F
Attribute G
Attribute H
나는 결국 약 40 모델을 가지고, 그래서 별도의 테이블을 가지고 싶지 않아.
이것을 표현하는 가장 좋은 방법은 프로그램 및 양식의 레이아웃을 완전히 제어해야합니다.
이전에 HStore (포스트그레스 포함)를 사용하여이 작업을 수행했으며 다른 제안 사항이 있는지 궁금해하고있었습니다.
[EDIT] 동일한 속성을 건너 모델
예 :
:company_name,:contact_person,:physical_address,:contact_email,:contact_phone
예 폼 A : B 형의
:mobile_current_provider,:num_mobile_connections,:num_smartphones,:operating_system,:num_high_voice_users
예
:kw_per_month, :weekend_power, :three_phase_power, :seasonal_difference
대부분의 f ields는 문자열 또는 정수 (소수 부울 포함)이지만 모두 문자열로 강제 변환 될 수 있습니다. 데이터의 대부분은 단순히 검색 및 계산 등
당신이class A < C
class B < C
class C < ActiveRecord::Base
을 STI
을 사용할 수 있도록 여러 테이블을하지 않으
속성의 몇 가지 예가 도움이됩니다. –
편집을 참조하십시오. 감사합니다. – JamesWatling