3단계 Django Paginator 페이지 나누기
1. 모델을 통해 Subject 생성
Django models
from django.db import models
class Subject(models.Model):
""" ""”
no = models.AutoField(primary_key=True, verbose_name=" ")
name = models.CharField(max_length=31, verbose_name=" ")
intro = models.CharField(max_length=511, verbose_name=" ")
def __str__(self):
return self.name
class Meta:
db_table = 'tb_subject’
verbose_name_plural = " "
2. view 모듈을 통해 전방의 데이터를 보여야 한다
Django view 구성
from django.shortcuts import render
from django.core.paginator import Paginator, InvalidPage, EmptyPage, PageNotAnInteger
from vote.models import Subject
def show_subject(request):
""" """
# Subject
subjects = Subject.objects.all().order_by("no”)
# Paginator , 5
paginator = Paginator(subjects, 5)
# request.GET.get() uri page
page = request.GET.get('page')
try:
# page , page
subject_obj = paginator.page(page)
except PageNotAnInteger:
subject_obj = paginator.page(1)
except (EmptyPage, InvalidPage):
subject_obj = paginator.page(paginator.num_pages)
return render(request, "vote/subject.html", {'subject_list': subject_obj})
3. 뷰의 데이터를 전단 모델에 렌더링
프런트엔드 페이지 나누기 코드 블록:
{% if subject_list.has_previous %}
«
{% endif %}
{% for page_num in subject_list.paginator.page_range %}
{% if page_num == subject_list.number %}
{{ page_num }}
(current)
{% else %}
{{ page_num }}
(current)
{% endif %}
{% endfor %}
{% if subject_list.has_next %}
»
{% endif %}
4. 최종 디스플레이 효과
(그림 출처: 네트워크)
저자: 임홍리
출처: 의신기술대학
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
java ArrayList 페이지 인스턴스 코드java, ArrayList 페이지 나누기 개요 시스템과 시스템 간의 상호작용은 통상적으로 인터페이스를 사용하는 형식이다.만약에 B시스템이 대량의 조회 인터페이스를 제공한다고 가정하면 매번 50개의 데이터만 조회할 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.