1. 배경
양육일지(가제) app에 사용될 모델을 생성한다.
2. 요구사항과 핵심기능
- 기존 양식을 반영하여 업무파악 후 모델링 한다.
- 교사 점검 데이터와 학생 점검 데이터를 구분하여 테이블에 입력한다.
- 피드백(comment)을 위한 테이블을 생성한다.
- 각 테이블 이름은 명시적으로 작성한다.
3. 설계
1) Model
2) BE
(1) MemberCheck
5개 필드
- name : Member 모델을 참조하는 외래키
- gqs : GQS 참석여부
- status : 양육일지

CharField vs TextField
CharField의 경우 사용하는 DB에 따라 max_length가 달라지는데 공식문서에 다르면 PostgreSQL의 경우 무제한 VARCHAR를 지원한다고 한다. TextField는 파이썬 자료형에서는 str로 동일하지만 PostgreSQL의 경우 TEXT(1G), MySQL의 경우 LONGTEXT(4G)에 해당한다. TextField는 매우 큰 문자열을 저장할 수 있지만 데이터베이스의 성능이 떨어질 수 있다고한다. TextField는 어쩔수 없이 데이터 문자열 길이를 제한할 수 없을 때 사용한다고! 양욱일지에서는 TextField 만큼 긴 문자열을 입력하진 않아서 CharFiled로 결정!
- pray_member : 학생이 제출한 기도제목
- date : 작성일 기준 직전 주일 입력
(2) UserCheck
9개 필드
- teacher : User 모델의 필드를 참조하는 외래키
- worship : 예배참석 여부
- qt : QT 횟수
- meeting : 교사모임 참석 여부
- pray_youth : 청소년부를 위한 기도
- pray_group : 반 모임을 위한 기도
- pray_user : 사용자에 대한 기도
- issue : 문의사항/긴급사항
- date : 작성일 기준 직전 주일 입력
4개 필드
- teacher : User 모델의 필드를 참조하는 외래키
- member_cherck : MemberCheck 모델의 필드를 참조하는 외래키
- feedback : 교역자의 피드백
- date : 작성일 기준 직전 주일 입력
3) DB 도식화
2024년 5월 29일

6개 테이블
- CustomUser : 사용자 계정
- UserCheck : 하나님 앞에서
- Member : 학생 인적사항
- MemberCheck : 양육일지
- Attendance : 출석
- Comment : 댓글