Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 백엔드
- django
- 멋사 10기
- 파이썬 크롤링
- 멋사
- 웹동아리
- 멋쟁이 사자처럼
- 멋쟁이사자처럼10기
- 코딩동아리
- 크롤링
- 멋사10기
- 멋사 합격
- IT동아리
- API
- 멋쟁이사자처럼11기
- 멋쟁이사자처럼 서류
- 깃허브
- 멋사 서류
- 멋쟁이사자처럼
- 파이썬
- 디스코드봇
- 멋쟁이사자처럼대학
- 멋사 면접
- 멋사12
- 기사 제목 크롤링
- discord
- 알림봇
- 멋사11기
- ㅏㄴ
- 멋사 서류평가
Archives
- Today
- Total
ACHO.pk devlog
[멋쟁이사자처럼10기] Django 개발자 대나무숲 프로젝트(Pagination) 본문
pagination
게시판에서 한 페이지 단위로 글의 목록을 끊어서 보여주는 것
- ~~~~/?page=1
- ~~~~/?page=2
- ~~~~/?page=3
snsapp/views.py
- home 함수에 이 코드를 작성하는 이유는 index.html이 게시판이기 때문이다. ( 익명 게시판 )
from django.core.paginator import Paginator #개체들의 목록을 끊어줌
def home(request):
# posts = Post.objects.all()
posts = Post.objects.filter().order_by('-date')
#개체들의 목록을 5개 단위로 끊음
paginator = Paginator(posts, 5)
pagenum = request.GET.get('page')
#get_page에 페이지 숫자가 저장되고, posts에 개체를 5개 단위로 자른 것이 저장된다.
posts = paginator.get_page(pagenum)
return render(request, 'index.html', {'posts':posts})
목록 넘어가는 링크 남기기
index.html
- posts 객체들의 목록이 이전 페이지(has_previous)가 존재한다면, posts 객체가 가지고 있는 이전 페이지의 숫자(previous_page_number)가 반환된다.
- posts 객체들의 목록이 다음 페이지(has_next)가 존재한다면, posts 객체가 가지고 있는 다음 페이지의 숫자(next_page_number)가 반환된다.
<!--페이지네이션-->
{% if posts.has_previous %}
<a href = "?page=1">첫 페이지</a>
<a href = "?page={{posts.previous_page_number}}">이전 페이지</a>
{% endif %}
<span>{{ posts.number }}</span>
<span> / </span>
<span>{{ posts.paginator.num_pages }}</span> <!--총 페이지 수-->
{% if posts.has_next %}
<a href = "?page={{ posts.next_page_number }}">다음 페이지</a>
<a href = "?page={{ posts.paginator.num_pages }}">마지막 페이지</a>
{% endif %}
'멋쟁이사자처럼' 카테고리의 다른 글
[멋쟁이사자처럼10기] Django 영화 리뷰 사이트(소셜 로그인) (0) | 2022.07.19 |
---|---|
[멋쟁이사자처럼10기] Django 영화 리뷰 사이트(외부 db 연동하기) (0) | 2022.07.15 |
[멋쟁이사자처럼10기] Django 개발자 대나무숲 프로젝트(회원가입) (0) | 2022.07.11 |
[멋쟁이사자처럼10기] Django 개발자 대나무숲 프로젝트(자유게시판) (0) | 2022.07.11 |
[멋쟁이사저처럼10기] Django 개발자 대나무숲 프로젝트(로그인/로그아웃 구현하기) (0) | 2022.07.09 |
Comments