码迷,mamicode.com
首页 > 其他好文 > 详细

六、django分面、获取请求参数

时间:2019-10-26 15:04:08      阅读:74      评论:0      收藏:0      [点我收藏+]

标签:mode   nan   end   filter   mod   font   core   def   ext   

一、获取请求参数

 

def index(request):
    limit = request.GET.get(limit,20) #get请求获取请求参数
    page = request.GET.get(page,1)
    username = request.POST.get(name,nana) #post请求获取请求参数

 

二、分页的方法

from django.core.paginator import Paginator  #实现分页的类

l = list(range(100)) #定义一个list作为分页的数据
page_obj = Paginator(l,20) #第一个参数,对谁进行分页,第二个参数,一页多少个

print(page_obj.count)# 总共多少条数据
print(list(page_obj.get_page(2)))#获取第1页的数据
print(page_obj.object_list)#page_obj原始的数据
print(page_obj.num_pages)#总共分了几页
print(page_obj.page_range)#分页范围  range(1, 6)

page1 = page_obj.get_page(1)
re = page1.has_next()#是否有下一页
re = page1.has_other_pages()#是否有其他的页
re = page1.has_previous()#是否有上一页
re = page1.next_page_number()#下一页的页码,如果没有则报错
re = page1.previous_page_number()#上一页的页码
re = page1.end_index()#这一页最后一个元素的脚标
re = page1.start_index()#这一页第一个元素的脚标
re = page1.paginator#获取分页的对象
re = page1.number #当前的页码

print(re)

三、实现分页

def index(request):
    limit = request.GET.get(limit,page_limit)#从请求中获取limit
    page = request.GET.get(page,1)#从请求中获取page
    articles = models.Article.objects.filter(is_delete=1)#从数据库中取到文章表的内容
    page_obj = Paginator(articles, limit)#得到文章的对象,按照传过来的limit决定一页多少文章
    page_data = page_obj.get_page(page)#得到具体页面的内容,比如page传入3就获取第三页的内容
    dic = {articles : page_data}#传到页面上的数据已经根据页码显示
    return render(request, index.html, dic)

 

六、django分面、获取请求参数

标签:mode   nan   end   filter   mod   font   core   def   ext   

原文地址:https://www.cnblogs.com/yanyan-/p/11742982.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!