개발 시나리오
1 번에 필요한 데이터: 캘린더 리스트 데이터
2 번에 필요한 데이터: 캘린더 특정 하루에 대한 상세 데이터
추가 시나리오
- 유저가 존재하는 경우
- 유저별 데이터 구성
- 원하는 운동의 항목이 없는 경우
- 운동의 추가, 수정, 삭제
운동(WorkOut)
models
Views - GenericAPIView
ListCreateAPIView
: 전체 운동 리스트 조회, 운동 생성
RetrieveUpdateDestroyAPIView
: 운동 상세 페이지 조회, 수정, 삭제
유저(User)
models
- 성, 이름
- 성별
- 프로필 이미지(프로필 페이지를 만들 경우)
AbstractUser
를 사용함으로써username
, password
등의 기본적인 항목은 자동 생성
views - APIView
- 전체 유저 리스트 조회
- 로그인한 유저 페이지 조회, 수정
- 특정 유저 상세 페이지 조회
- 로그인한 유저 페이지 패스워드 재설정
- 회원가입
- 로그인
- 로그아웃
로그인을 한 경우 사용할 수 있는 URL은 permission_classes
로 처리
캘린더(Calender)
models
- 유저: ForeignKey
- 운동: ManyToManyField
views - GenericAPIView
- 로그인한 유저의 캘린더 리스트 조회, 생성
- 로그인한 유저의 특정 하우에 대한 상세 데이터 조회, 수정, 삭제
소스코드