Django REST Framework/DRF 일반
[DRF] PostgreSQL에서 order_by로 한글 정렬 하기
- default로 만들어주는 데이터베이스의 collate가 en_US.UTF-8이기 때문에 발생하는 현상이다.
from django.db.models import Func
ko_kr = Func(
"field_name",
function="ko_KR.utf8",
template='(%(expressions)s) COLLATE "%(function)s"'
)
Foo.objects.all().order_by(ko_kr.asc()) # 오름차순
Foo.objects.all().order_by(ko_kr.desc()) # 내림차순
- field_name : 정렬할 칼럼 명 정의
- template에서 "%(function)s"에 사용되는 따옴표는 항상 큰따옴표여야 한다.
- reference :
'Django REST Framework > DRF 일반' 카테고리의 다른 글
[DRF] 참고(reference) 정리 - 포스팅 하기엔 정리가 잘된 글 모음 (1) | 2024.02.02 |
---|---|
[DRF] ViewSet, GenericViewSet, ModelViewSet 페이지 네이션 사용 방법 (1) | 2024.01.29 |
[DRF] FBV, APIView의 예시 (1) | 2024.01.25 |
[DRF] Request, Response의 간단한 정리 (0) | 2024.01.25 |
[DRF] TestCase로 Django-Rest-Framework를 위한 테스트 코드 만들기 (0) | 2024.01.23 |
댓글