-
[Django] ORM, QuerySet, Lookup파이썬/Django 2023. 1. 3. 09:30728x90반응형
Django Shell 열기
# python shell 열기 python manage.py shell >>> # 사용할 app 임포트하기 >>> from rooms.models import Room
ORM
.get()
Room.objects.get(pk=1)
한 번에 두 가지 이상의 요소는 get 할 수 없음
.get()은 검색 결과가 1개 뿐인 것을 반환할 수 있음
.all()
.filter()
Room.objects.filter(price__gt=15) Room.objects.filter(name__contains="서울" )
.create()
새 데이터 생성하기
Amenity.objects.create(name="Amenity from the console", description="How cool is this")
.delete()
QuerySet 이란?
반려동물 동반이 허용되면서 가격은 15달러 미만에 "서울"이라는 이름이 들어간 숙소를 찾고 싶을 경우
Room.objects.filter(pet_friendly=True).exclude(price__lt=15).filter(name__contains="서울")
그 filter를 한번에 쓰기
Room.objects.filter(pet_friendly=True, name__contains="서울", price__gt=15)
Lookup
__(더블언더스코어) : lookup 이라는 의미
Room.objects.filter(created_at__year=2022)
참고할 공식문서
https://docs.djangoproject.com/en/4.1/ref/models/querysets/#id4
LIST'파이썬 > Django' 카테고리의 다른 글
[Django] 어드민 페이지 디테일 수정하기 (0) 2023.01.04 [Django] Reverse Accessors, 외래키 Foreign Key (0) 2023.01.03 [Django] 관계(Relationship) 설정하기 many to many, one to may, many to one (0) 2022.12.31 [Django] common app으로 공통코드 관리하기 (0) 2022.12.30 [Django] app 생성하고 model 설정하기, 옵션 추가하기 (0) 2022.12.29