django mysql分页_用django将数据从数据库提出并分页展示-阿里云开发者社区

不要笑这个太简单噢~~大神们路过的请自动忽略本文……

'''django有自带的分页功能,我这个是自己做的分页,效果其实是一样的。 '''

要把数据提出并展示出来~效果如下:

0_1313645999NHt4.gif

1、需要建立一个project噢~

project中要包含一个展示的html页面和一个“后台”的Python页面。为了把.html和.py文件区分开,所以在project的文件夹下要建立一个templates文件夹来存放html文件。建好的project如下:

0_1313644161B2N0.gif

2、打开test.py进行编辑。

1)首先,要连接数据库,其中的MySQLdb需要自行下载安装,它是python连接mysql数据库所必不可少的~当然~如果水平灰常高滴童鞋可以自己写。连接代码如下~数据库的相关信息因自己的数据库而异。

0_1313644692l3YU.gif

2)接下来需要的就是用sql语句将数据从数据库中提取出来。因为我们要分页显示所以我们用到了sql中limit语句。同时我们也需要定义一个变量curr_page来获取当前页面是第几页。之后要做的就是把数据库中取出的数据循环赋给一个results变量。这样只要把results的结果给.html文件,数据就可以循环输出啦

0_1313646809R55u.gif

补充说明:上面这段代码最下面定义的变量count就是取出数据库中的数据总条数。select语句中嵌套的select语句就表示查询数据库中数据的总条数,可以单独列出来写噢

3)下面的工作就是需要定义几个分页会用到的变量

num_pages:总页数  ,  last_page :尾页  , has_previous :判断当前页是否有前一页, has_next  :判断当前页是否有下一页,

previous_page_number  :当前页的前一页 ,next_page_number :当前页的后一页,具体的定义如下:

0_13136479874hj0.gif

4)之后要做的就是要把在.py文件中定义的变量们传给.html文件咯~~我们用return render_to_response完成:

0_1313648281h9i2.gif

5)不过要注意点,我们之前打开的cur和conn都需要关闭。

cur.close()

conn.close()

这样,我们的.py文件就写好啦~呼呼

3、html文件的编辑

有了上面的基础~html文件的思路就很明确嘞,就是把刚刚提交的变量们按照你喜欢的位置输出,来看代码吧:

0_13136486958lzX.gif

4、现在我们的页面还不能运行~因为服务器还找不到我们的代码。下面需要做的就是修改urls.py和settings.py文件了

1)在urls.py文件的urlpatterns = patterns中加入     (r'^test/$','hui.test.getdata'),  其中具体的名字因情况而定

2)在settings.py文件的TEMPLATE_DIRS 中加入     './templates',   这是我们自定义的模板文件夹,来存放html文件

5,、现在启动服务器,在地址栏里输入相关的地址就可以嘞~~别忘了~要显示第一页地址中别少了  /?page=1噢

本文转自 sjfbjs 51CTO博客,原文链接:http://blog.51cto.com/11886896/1951208

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值