Til
Til - 24.04.17 스파르타 마켓 - Django 장고 개인과제
dini_dini
2024. 4. 17. 21:03
지금까지 구현한것
-로그인 로그아웃 회원가입
-게시물올리기 상세페이지 , 수정, 삭제
-상세페이지 좋아요기능
해야할것
-gitignore
-이미지 업로드 : 사진을 안올리면 기본이미지는 뜨지만 올리면 사진이 안뜨는 오류
-팔로우 팔로워
-메인화면에서 좋아요갯수와 좋아요 누르기
-게시물이 9개 넘어가면 페이지 넘기기 기능
게시물 넘기기 기능
view 에 paginator를 사용해보자
from django.shortcuts import render, get_object_or_404, redirect
from .models import Post, Like
from .forms import PostForm
from django.http import HttpResponse, HttpResponseRedirect
from django.urls import reverse
from django.core.paginator import Paginator
def index_view(request):
posts_list = Post.objects.all().order_by('-created_at')
paginator = Paginator(posts_list, 9) # 한 페이지 당 9개의 게시물
page_number = request.GET.get('page') # URL에서 페이지 번호
posts = paginator.get_page(page_number)
return render(request, 'index.html', {'posts': posts})
<div class="pagination">
<span class="step-links">
{% if posts.has_previous %}
<a href="?page=1">« 첫페이지</a>
<a href="?page={{ posts.previous_page_number }}">이전으로</a>
{% endif %}
<span class="current">
Page {{ posts.number }} of {{ 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 %}
</span>
</div>
인덱스 하단에 추가
****주의할점
- 오류가 났었음 - 프로덕츠 뷰에 넣었었는데 인덱스가 있는 메인 뷰에 넣어야함 ㅠㅠ