장고 ORM을 정리해보고자 합니다.
처음 배울때 ORM의 개념조차 모른 상태에서 시작할 때 접고 싶었으나 다른 사람들은 그러질 않길 바라며, 내용을 정리하여 공유 드리고자 합니다.
- 아래 링크는 ORM 참고되는 자료가 있으니 한번 보는 것도 좋습니다.
- https://django-orm-cookbook-ko.readthedocs.io/en/latest/index.html
그럼 장고 ORM을 시작 하도록 겠습니다.
ORM이란, 객채(Object)의 관계(Relational)를 연결(Mapper)해주는 것을 뜻한다. 객체 지향적인 방법을 사용하여 데이터베이스의 데이터를 쉽게 조작할 수 있게 해주는 것이다.
즉, Django의 ORM이란, 파이썬과 데이터베이스의 SQL사이의 통역사 역할을 해준다.
앞으로 아래의 Function을 활용하여 ORM을 완성해 갈 것입니다.
원하는 query를 만들기 위해서는 함수들을 사용해야 합니다.
지금부터 같이 하나씩 공부해보도록 합시다.
조건 키워드
① model.objects.filter(name__contains=’Welcom’)
② model.objects.filter(name__icontains=’Welcom’)
: ① 문자 검색 할 수 있음 / ② 대소문자를 구분 하지 않음
ORM을 활용한 데이터 전체 불러오기
ORM을 활용한 데이터 필터
Get과 Filter 차이
- Get : 한개의 데이터를 추출 할때 사용
- Filter : 여러 개의 데이터를 추출 할때 사용
ORM을 활용한 데이터 — 정렬하기
- [SQL 문법]
SELECT * FROM TABLE1 ORDER BY(create_date)
- [ORM 문법]
Model.objects.all().order_by(‘created_date’)
ORM을 활용한 데이터 — 평균, 최소, 최대, 합계
- View 테이블에 아래와 같이 import Code를 넣어 주지 않으면 에러가 발생할테니 꼭 넣어 주길 바랍니다.
from django.db.models import Avg, Max, Min, Sum