일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 멘딕스
- microflow
- SQL
- lcap
- 프로그래머스
- 자료구조
- Mendix
- 집합
- 이분탐색
- 스택
- 가중치없는그래프
- MySQL
- Bruteforce
- 반효경교수님
- 그래프
- algorithm
- 트리
- 자바
- 완전탐색
- 매개변수 탐색
- 알고리즘
- Recursion
- 정렬
- 백트래킹
- git
- 재귀
- domain model
- 해시맵
- dfs
- Sort
- Today
- Total
mondegreen
[Mendix Rapid] 중첩된 데이터(Nested Data) 본문
페이지에 객체로 전달되거나 리스트 뷰에 데이터를 띄우기 위해서 도메인 모델로 엔티티를 작성하고 연결하는 방식은 이전 Beginner 과정에서 활용해봤다. 하지만 여기서 더 나아가 중첩된 데이터(Nested data)를 사용해보자.
중첩된 데이터라고 축약해 표현되어 있는데 어떠한 상황에서 사용되는지 아래 멘딕스 개발 화면과 함께 설명하고자 한다.
먼저 강의 관련 서비스를 제공하는 어플리케이션을 개발하며 과정과 강의장소, 강사, 교육생 엔티티가 존재하고 과정, 장소, 강사 엔티티와 연결된 훈련 이벤트가 존재한다. 이 때 한 교육생이 특정 교육 훈련과정에 등록한다고 가정해보자. 그럼 이 등록과 관련된 속성은 훈련 과정이나 교육생 엔티티에 포함되어야 할까?
아니다 위의 registration 엔티티와 같이 정보 객체로서 별도로 존재하고 양쪽의 엔티티와 연결되어 중간 테이블 역할을 한다. 마치 RDBMS의 다대다 관계에서 중간 테이블을 만드는 것과 같다. 이러한 도메인 모델을 인지하고 다음 자료에서 제공하고자 하는 기능을 살펴보자.
먼저 강의와 강사 그리고 장소로 구성된 훈련과정을 보여주는 리스트가 있고 이 리스트에 등록된 내역들을 보고자 한다. 오른쪽의 Registration 버튼을 클릭하면 해당 훈련과정에 등록된 내역을 보여주는 화면으로 이동한다.
데이터 구조를 보면 특정 훈련과정 내부에 다수의 등록내역이 존재한다. 즉, 훈련 과정 엔티티 내부에 등록 엔티티가 "중첩"되어 있는 형태이다. Data View는 훈련과정(Training Events) 객체를 연결하고 내부에 등록 목록이 보여질 리스트 뷰를 넣어준다.
위의 리스트 뷰에 적용할 엔티티를 선택하는 창을 보면 데이터뷰는 훈련과정과 매칭되어 있고, 리스트 뷰에 매칭할 요소를 "Registration"으로 선택해준다.
결과적으로 아래와 같이 훈련 과정 안에 등록 내역을 중첩해서 적용하게 된다.
이렇게 구현한 결과 화면이다. 중첩된 데이터를 이해할 수 있는 케이스였다.
참고. Using nested data is contraining the data in one widget in teh context of the other.
'Mendix > Academy 및 Docs' 카테고리의 다른 글
[Mendix Rapid] Microflow 작성 사례 (0) | 2024.05.29 |
---|---|
[Mendix Rapid] Microflow가 필요한 이유 (0) | 2024.05.29 |
[Mendix Beginner] 멘딕스는 어떤 개발에 적합할까 (0) | 2024.05.27 |
[Mendix Beginner] Build your app using a template - Filtering, Sorting (0) | 2024.05.24 |
[Mendix Beginner] Build your app using a template - Microflow (0) | 2024.05.23 |