나는 환자의 LabTestResult에서 가져 와서 데이터베이스에 저장하는 API 인터페이스를 가지고 있습니다. 실험실 테스트 결과의 결과 열은 문자열 (의사의 긴 텍스트), 정수 값 또는 +/- (나는 부울 값을 사용합니다) 중 하나 일 수 있습니다.데이터베이스에 다른 유형의 값을 가진 상속
현재 3 개의 열 (text_result, integer_result, sign_result)이있는 데이터베이스가 있으며 각 labtestresult에 대해 하나의 필드가 있습니다.
우선이 방법을 사용하는 것이 맞습니까? 또는 결과 값이 다른 유형의 세 개의 다른 테이블을 가질 필요가 있습니까?
또한 상속을 사용하고 기본 모델 인 LabTestResult가 있으며 TextLabTestResult, IntegerLabTestResult, SignLabtestResult라는 세 개의 모델이 있다고 생각합니다.
그래서 지금 내 질문은 컨트롤러 (API)에 결과가 문자열 인 경우 결과가 문자열 인 경우 TextLabTestResult.new 또는 상위 모델 LabTestResult에 로직이 있어야하고 case 문은 TextLabTestResult 등의 문자열이있는 경우에 사용합니다.
나는 이것을 설명하는 디자인 패턴이있는 것처럼 느껴지고, 여기에 뭔가 빠져있을 수 있습니다. 더 좋은 디자인이 될 수 있습니다.