第三天:
21:分页功能的实现:
现在我们的博客可能只有几篇文章,因此可以全部在首页展示出来,随着博客数量的增加,当达到几十上百篇时,全部展现在首页是不显示也是不友好的,这个时候我们就需要对博客进行分页了。django有它自带的分页功能:Paginator。不过我们用在它基础上开发的另一个包:django-pure-pagination。。
下载地址:https://github.com/jamespacileo/django-pure-pagination
也可以直接用pip进行安装。。安装命令 pip install django-pure-pagination
22:在blog下的setting.py 文件中做一下修改:
①:将刚才安装的包添加到应用中
       
②:然后在setting.py文件的末尾添加:
       
23:修改视图函数(在myblog文件下的views.py中),修改内容如下:
      
前面的一些内容我没截屏。所以不敢以为我删了。。
24:前端的修改:
      
其次,将index.html下的分页展示的内容换为以下的内容,修改过的index.html页面我放在了所给资源的tempaltes文件夹下。名字叫“第三次修改index”。将其拷到本项目的templates下,修改名字覆盖当前的index.html
<!--分页展示-->
<nav class="pagination">
    <div class="pageturn">
        <ul class="pagelist">
            {% if all_blog.has_previous %}
                <li class="long"><a href="?{{ all_blog.previous_page_number.querystring }}">上一页</a></li>
            {% endif %}
            {% for page in all_blog.pages %}
            {% if page %}
                {% ifequal page all_blog.number %}
                    <li class="active"><a href="?{{ page.querystring }}">{{ page }}</a></li>
                {% else %}
                     <li><a href="?{{ page.querystring }}" class="page">{{ page }}</a></li>
                {% endifequal %}
            {% else %}
                <li class="none"><a href="">...</a></li>
            {% endif %}
            {% endfor %}
            {% if all_blog.has_next %}
                <li class="long"><a href="?{{ all_blog.next_page_number.querystring }}">下一页</a></li>
            {% endif %}
        </ul>
    </div>
</nav>  25:为了体验分页,我写了6篇博客。。看到分页咯
   
26:我们再实现一个功能:通过regroup实现博客的归档
将所给资源中的archive.html拷贝到我们的templates中
27:编写视图函数,在myblog目录下的views.py文件中添加以下内容:
      
28:配置url地址 在blog目录下的urls.py中添加:
   
29:直接访问:http://127.0.0.1:8000/archive/ 就可以看到:
  
30:我们现在做一件比较重要的事情: 给头部的“首页”,“归档”等设置相对应的链接。点击可以转换到对应的界面。
打开templates下的base.html文档 。分别找到首页,归档的位置,将href值改为:
    
    
今天我们做了归档和分页的功能,碰到问题,大家可以留言。。。明天继续。。

京公网安备 11010502036488号