반응형
할 일을 미리 정리하고 시작하기로 했다.
1. 오늘 할 일
1) 답변 수정 삭제 기능 추가
2) 게시판 검색 기능 (전체 검색, 주제별 검색 기능)
3) 회원가입 수정 (이메일 인증, SSO 기능, Django User 모델 확인)
4) 회원정보 페이지, 회원정보 수정
5) 웹 소설 페이지 제작 진행
2. 오늘 한 일
Issue #1. 검색 기능에 대해서 (Django ORM)
Django에서는 SQL문을 직접 사용하지 않고 ORM을 통해서 대신 DB를 참조할 수 있다.
# Class는 model 객체
Class.objects.all() # SELECT *
Class.objects.get(T=v) # SELECT v FORM T
Class.objects.create() # INSERT INTO
filter()를 통해 조건에 맞는 것을 가져올 수 있다.
Class.objects.filter(조건) # 조건에 따른 값 가져옴
# 1개 이상의 인자를 지정할 경우 ','로 구분되며 AND 연산으로 묶임
# OR 연산을 하고 싶을 경우 Q를 사용해야 함.
# not 연산의 경우 ~Q를 사용하거나 exclude()를 사용
Class.objects.exclude()
Class.objects.filter(~Q())
# django.db.models.Q
공식 문서는 Q()에 대해서 쿼리 관련 도구로 설명한다.
Q 내부에 사용할 수 있는 속성 값들이 존재한다. ex) __icontain (대소문자 무시하고 포함되는),
Q(subject__incontains=kw)
# subject 값이 대소문자 무시하고 kw를 포함하는 것
Q(subject__startswith=kw)
# subject의 값이 kw로 시작하는 것w로 시작하는 것
# __를 사용한다.
# 꼭 저런 속성값을 안써도 된다. 필요한 경우 검색해서 사용하자.
프로필 페이지 생성
먼저, Profile 모델을 생성한다. ImageField를 사용하기 위해서 pip pillow 모듈을 설치한다.
settings에서 이미지를 저장할 공간을 지정한다.
내일 좀 더 세밀하게 계획하고 시도하겠음.
'Python > Jabbok' 카테고리의 다른 글
2021. 03. 19. (0) | 2021.03.19 |
---|---|
2021. 03. 18. 회원정보 페이지, 수정 & 웹소설, 홈 구성 (0) | 2021.03.18 |
2021. 03. 16. 프로젝트 선정부터 게시판 제작 (0) | 2021.03.16 |
2021. 03. 11. Pybo 따라하기 (0) | 2021.03.11 |
2021. 03. 10. Pybo 따라하기 (0) | 2021.03.10 |