Django

Django 에서 object 조회 시 sorting 하기(order_by)

Jan. 17, 2023, 1:49 p.m.

안녕하세요?

이번 포스트에서는 

django 프레임워크에서 views.py 파일에 아래와 같은 구문으로 object를 가져오는 경우가 있는데

#views.py

def index(request):
    matching_article = Article.objects.all()

이렇게 조회를 해오면, 순서가 제가 원하는 순서대로 지정이 어려워서

이를 sorting 해주는 방법에 대해 알아보겠습니다.

 

order_by 구문 사용하기

저는 'published'라는 등록된 시간을 의미하는 칼럼을 기준으로 

가장 최근에 등록된 포스트가 맨 위에 오도록 sorting 을 해주려고 합니다.

아래와 같이 order_by 구문을 추가해줄 수 있는데,

#views.py

def index(request):
    matching_article = Article.objects.all()
    matching_article = matching_article.order_by('published')

이렇게 입력하면 'published' 컬럼을 기준으로 오름차순으로 정렬이 되어서

맨 위에 가장 나중에 등록된 포스트가 옵니다.

제가 원하는 대로 하려면 이를 내림차순으로 바꿔줘야 하는데, 아래와 같이 입력하면 됩니다.

#views.py

def index(request):
    matching_article = Article.objects.all()
    matching_article = matching_article.order_by('-published')

 

이렇게 수정하고 조회하면

내림차순으로 조회되는 것을 확인할 수 있습니다!

Reference


Comments


Related Posts