[천재교육] 프로젝트 기반 빅데이터 서비스 개발자 양성 과정 9기
학습일 : 2024.08.13
📕 학습 목록
- 프로젝트 목표 설정
- 기능 구현 범위 구체화
📗 프로젝트 작업 내역
1. 프로젝트 목표
1) 도서 관리 시스템 구축: 사용자가 도서관의 도서 목록을 확인하고, 특정 도서의 상세 정보와 대출 상태를 볼 수 있는 기능을 제공하여, 도서관의 효율적인 도서 관리 및 접근성을 향상시킴
2) REST API 제공: 도서 정보와 대출 데이터를 REST API로 제공함으로써, 외부 시스템이나 프론트엔드와의 데이터 연동이 가능한 구조를 구현함
3) 권한 기반의 접근 제어: 관리자와 일반 사용자 권한을 구분하여, 특정 기능에 대한 접근을 제한하고 보안을 강화함
4) 심플하고 직관적인 UI 구축: 기본적인 CSS 스타일링을 적용하여, 사용자에게 깔끔하고 직관적인 인터페이스를 제공함
2. 기능 구현 범위 구체화
1) 도서 및 저자 정보 관리
- 도서 목록 페이지 구현: 모든 도서 목록을 조회하고, 페이지네이션을 통해 많은 데이터를 관리
- 도서 상세 페이지: 각 도서의 상세 정보(제목, 저자, 요약, ISBN, 장르)를 확인할 수 있도록 구성
- 저자 목록 및 상세 페이지: 저자 목록을 표시하고, 각 저자의 생년월일과 사망일 등의 상세 정보를 확인
2) 도서 대출 및 상태 관리
- 도서 대출 상태 관리: BookInstance 모델을 사용해 각 도서의 상태(대출 가능, 대출 중, 유지보수 중, 예약됨) 관리
- 고유 대출 인스턴스 관리: UUID로 각 도서를 고유하게 식별하여, 대출 상태와 반납 예정일 정보를 설정
- 사용자 대출 목록 페이지: 로그인한 사용자가 본인의 대출 중인 도서를 확인할 수 있는 기능을 제공
- 모든 대출 도서 목록 페이지(관리자 전용): 모든 대출 중인 도서의 목록을 조회할 수 있는 페이지를 제공
3) 검색 및 필터링 기능
- 키워드 기반 검색: index 페이지에서 키워드 입력을 통해 도서의 목록을 필터링하는 기능을 제공
- 검색 결과 필터링: 검색어와 일치하는 도서 개수를 ORM을 통해 조회하여 사용자에게 제공
4) 사용자 인증 및 권한 관리
- 사용자 로그인 및 로그아웃: Django 인증 시스템을 통해 사용자 로그인과 로그아웃 기능을 제공
- 관리자 권한 설정: 관리자 권한이 필요한 기능(예: 반납 처리)에 접근할 수 있도록 권한을 설정
5) REST API 제공
- 도서 목록 API: 모든 도서의 정보를 JSON 형식으로 반환하는 API를 구현
- 도서 인스턴스 API: 특정 도서의 인스턴스 정보를 JSON 형식으로 제공하며, GET 및 POST 요청을 지원
6) UI 및 CSS 스타일링
- 기본적인 CSS 스타일 적용: 사이드바 및 버튼 스타일을 설정하여 UI를 개선
- 사용자 편의성 증대: 직관적인 인터페이스로 사용자 경험을 향상시킴
📙 내일 일정
- Django 웹 애플리케이션 개발
'TIL _Today I Learned > 2024.08' 카테고리의 다른 글
[DAY 26] Machine Learning 개론 (1) | 2024.08.19 |
---|---|
[DAY 25] Django 웹 애플리케이션 개발, 웹 크롤링 (0) | 2024.08.14 |
[DAY 23] Django 웹 애플리케이션 개발 (0) | 2024.08.12 |
[DAY 22] Flask (0) | 2024.08.09 |
[DAY 21] Flask (0) | 2024.08.08 |