미해결
파이썬으로 장고(Django) 공략하기: 입문
1. urls.py가 두개인데, 두개의 차이점이 뭔가요? 2. path('select/')가 들어가는 '' 부분에는 어떤게 들어가는건가요??? 파이썬 list를 index하는 것은 알지만, 이건 어떻게 쓰인건지 잘 모르겠습니다ㅠㅠ단순히 위치를 불러오는 건 views.가 해주는 것 같은데.. 2+(아 다시 생각해보니까 'select'가 도메인의 주소가 되는건가요? 그러면 뒤의 name은 뭐를 뜻하는건가요?)
2019-09-18T12:21:55.988Z
댓글 3
좋아요 1
조회수 331
미해결
파이썬으로 장고(Django) 공략하기: 입문
페이징 구현이 부족한듯하여 제가 만든 소스를 공유해봅니다. #views.py from django.shortcuts import render from third.models import Restaurant from django.core.paginator import Paginator import math from third.forms import RestaurantForm from django.http import HttpResponseRedirect # Create your views here. def list(request): restaurants = Restaurant.objects.all() pagenator = Paginator(restaurants, 5) page = request.GET.get('page') if page is None: page = 1 # 시작페이지 끝페이지 구하기 page_F = float(page) if page_F <= 10: beginPage = 1 else: beginPage = (math.trunc(page_F / 10)) * 10 + 1 if (beginPage + 10) > pagenator.num_pages: lastPage = pagenator.num_pages else: lastPage = beginPage + 9 nextRangeStartPage = lastPage + 1 pageRange = [] for num in range(beginPage, lastPage+1): pageRange.append(num) items = pagenator.get_page(page) context = { 'restaurants': items, 'lastPage': lastPage, 'pageRange': pageRange, 'nextRangeStartPage': nextRangeStartPage, } return render(request, 'third/list.html', context) #list.html {% extends 'third/base.html' %} {% load static %} {% block content %} <div class="container"> {% for item in restaurants %} <div class="row restaurant-item" style="margin:20px auto;"> <div class="col-sm-12"> <div class="card border-secondary"> <div class="card-body"> <h5 class="card-title">{{ item.name }}</h5> <p class="card-subtitle mb-2 text-muted">{{ item.address }}</p> <p class="card-text">음식점 설명</p> <a href="#" class="card-link">자세히 보기</a> <a href="#" class="card-link">수정하기</a> </div> </div> </div> </div> {% endfor %} <div class="row"> <div class="col-sm-12 text-center"> <div class="pagination"> <spen class="step-links text-center" style="width:100%;"> {% if restaurants.has_previous %} <a href="?page=1">«</a> {% endif %} {% for pageNum in pageRange %} {% if restaurants.number == pageNum %} <spen class="current"> {{ restaurants.number }} </spen> {% else %} <a href="?page={{ pageNum }}">{{ pageNum }}</a> {% endif %} {% endfor %} {% if restaurants.paginator.num_pages > lastPage %} <a href="?page={{ nextRangeStartPage }}">»</a> {% endif %} </spen> </div> </div> </div> </div> {% endblock %}
조현열
2019-09-16T01:49:38.607Z
댓글 1
좋아요 0
조회수 280