데이터 추가하기 (Create)
shell은 사용자의 명령어를 받아서 해석한 다음 프로그램을 실행해 주는 역할을 한다.
python manage.py shell
shell을 시작한다.
1) from 앱 이름.models import 모델명
[앱 이름] 앱 내의 models.py 파일에서 [모델명] 클래스 (모델) 불러온다.
2) 모델명.objects.all()
[모델명] 모델의 모든 데이터 조회한다.
아무런 데이터도 넣어주지 않았기 때문에 QuerySet 리스트는 당연히 비어있다.
3) [모델명].objects.create ((필드 명) = "값", ... )
값을 넣어준다.
4) [모델명].objects.all().values()
세부데이터를 조회한다.
데이터 조회하기 (Read)
1) [모델명].objects.all().values([칼럼명])
특정 칼럼의 데이터를 조회한다.
2) [모델명].objects.order_by(필터)
[모델명].objects.order_by(필터) : 필터대로 오름차순으로 정렬한다.
[모델명].objects.order_by(-필터) : 필터대로 내림차순으로 정렬한다.
3) [모델명].objects.get(name = "후루룩촌국수")
하나의 데이터를 조회할 때는 get을 사용한다.
4) [모델명].objects.filter(score = 8)
여러개의 데이터를 조회할 때는 filter을 사용한다.
5) [모델명].objects.count()
데이터의 개수를 센다.
6) [변수명] = [모델명].objects.exclude(field = value)
특정 조건을 제외한 데이터를 조회한다.
조건 키워드
exact | 대소문자를 구분해서 조건과 정확히 일치하는지 체크한다 |
iexact | 대소문자를 구분하지 않고 일치하는지 확인한다 |
contains | 지정한 문자열을 포함하는지 확인한다 |
icontains | 대소문자를 구분하지 않고 지정한 문자열을 포함하는지 확인한다 |
range(1000, 5000) | 지정한 범위 내에 포함되는지 확인한다 |
lt() / gt() | 미만 / 초과 |
lte() / gte() | 이하 / 이상 |
in | 주어진 리스트 안에 존재하는 자료를 조회한다 |
데이터 수정하기 (Update)
1) [변수명] = [모델명].object.get(id = 1)
변경할 데이터를 선택한다.
2) [변수명].[칼럼명] = "수정할 value"
3) [변수명].save()
변경할 데이터를 데이터베이스에 반영한다.
데이터 삭제하기 (Delete)
[변수명].delete()
QuerySet
QuerySet이란 ORM을 이용해서 데이터와 소통할 때 발생하는 자료형으로 리스트와 비슷하다.
print(data.query)
일종의 SQL문이다.
정리
'FRAMEWORK > Django' 카테고리의 다른 글
[Django] 배포하기 (0) | 2024.01.20 |
---|---|
[Django] 모델 (Model) (3) (0) | 2024.01.20 |
[Django] 모델 (Model) (1) (0) | 2024.01.20 |
[Django] 템플릿 (Template) (2) (0) | 2024.01.20 |
[Django] 템플릿(Template) (1) (0) | 2024.01.17 |