Magazine B는 공개적으로 제품에 대해 리뷰 또는 문의글 작성 기능이 없어 프론트팀과 상의하여 기능을 추가했다. Magazine K 리뷰 작성 기능 구현 → 각 제품별 상세 페이지 하단에 별점과 글을 작성할 수 있다. → 해당 제품을 구매하여 배송이완료된 회원만 해당 제품 페이지에 작성할 수 있어야 한다. → 구매를 안했을 경우 등록버튼을 누를 때 alert창이 뜨면서 오류를 알려준다 urls.py # reviews.urls.py 파일 urlpatterns = [ path('//reviews', ReviewView.as_view()), path('//reviews/', ReviewView.as_view()), ] 아래 주소와같이 지정한 url 주소에 product_id 값 (아래 url 예시에서는 ..
Magazine B는 제품 리스트에서 상세페이지까지 모두 query patameter를 사용했지만, 프로젝트에서는 제품 리스트페이지만 query parameter를 사용했고, 제품 상세 페이지는 path variable를 사용하여 구현하기로 했다. Magazine K 상세페이지 → restful api 구현을 위해 path variable사용한다. → 등록되지 않은 제품(ex. ~/products/100)의 url 주소로 접속시 404 error 반환한다. urls.py # products.urls.py 파일 urlpatterns = [ path('', ProductView.as_view()), path('/', ProductDetailView.as_view()), ] 아래 주소와같이 지정한 url 주소..
Magazine B은 여느 웹사이트와 동일하게 아이디와 비밀번호로 로그인을 하며, 회원가입 조건은 아이디와 비밀번호, 이름 이메일이 필수 입력 조건이지만 아이디와 비밀번호 이메일에는 특정 문자 입력 조건이 있으며 이메일 휴대전화는 조건이 따로 없었다. Magazine K 회원가입 조건 → 회원 아이디와 이메일과 비밀번호는 파이썬 정규표현식을 만족해야 하며, 아닐 시 400 에러를 반환한다. → 입력한 회원 아이디가 이미 중복된 아이디일 경우, 400 에러를 반환한다. → 프론트에서 보내주는 key값에 대한 오류 발생 시 key error 400를 반환한다. → 회원가입 성공 시 201 반환한다. views.py HTTP 통신으로 받은 method 종류에 따라 수행하는 방법을 정의해야 하는데, 회원가입은 ..
Magazine B 하나의 브랜드를 한호에 담아 전 세계에 소개하는 다큐멘터리 잡지를 출간하는 출판사 브랜드(?) 선정 과정 Magazine B는 서점에서 보는 잡지 표지로만 알고 있었고, 직접 판매하는 웹에는 들어가 본 적은 없었다. 프로젝트용 웹사이트를 찾아보던 중 한 번이라도 언급된 웹 사이트와 이미 사람들이 프로젝트 때 한 웹 페이지는 해보고 싶지 않아서 Magazine B를 선택했다. 사실 내가 선택한 사이트가 프로젝트 때 선정될지 몰랐다. Magazine B를 1차 프로젝트 때 선정한 이유를 정리하면 4가지 정도로 정리할 수 있을 것 같다. 1. Magazine B라는 웹 사이트가 다른 프로젝트 때 선정된 적 없는 것 같아서 2. 깔끔하고, 감각적이며, 복잡하지 않은 웹 페이지 레이아웃 3. ..
- Total
- Today
- Yesterday
- django.contrib.auth
- Python
- django
- 디자인 패턴
- 커맨드 객체
- 웹페이지
- Django tutorial
- 면접을 위한 CS 전공 지식 노트
- 회원가입
- git
- 배열
- API
- 환경 변수 설정
- Java
- Spring
- 암호화
- Magazine K
- error: failed to push some refs to 'https://github.com/
- 검색 결과 내 페이지네이션
- git 공부
- 톰캣
- 회원 로그인
- musma
- python3
- path variable
- 한글 형태소 분석기
- authenticate()
- git공부
- django-environ
- 혼자 공부하는 파이썬
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |