django——个人博客之分页/筛选功能
在完成了注册、登录后就应该显示主页,在主页中有各种功能的按钮,用户点击后进入后台管理,不同角色的用户根据权限不同显示的页面是不相同的,在个人博客页面会显示自己发布的文章,以及自己的保障记录,在进入后台管理后可以对这些文章进行增删改查,对保障单进行查看,下面分成两个方面来进行分析。
1、个人博客的显示
在进入博客页面后需要对个人的文章进行增删改查,这里主要针对数据库的操作,再查出文章后如果文章列表过多的话则需要对对其进行分页,以及不同关键字的查询功能。数据库的增删改查主要是基于django的modles操作来完成的,只要熟悉相应的models操作即可完成,下面分别是分类筛选功能的展示:
(1)、筛选功能:
其主要是在前端html总做文章,下面是相应的代码:
<div class="condition">
<div class="conditon_title">
<i class="fa fa-search" aria-hidden="true">搜索条件</i>
</div>
<div class="condition-content">
<div>
{% if type_id == 0 %}
<a class="btn btn-small active" href="artical-{{0}}-{{ blog_id }}.html">全部</a>
{% else %}
<a class="btn btn-small" href="artical-{{0}}-{{ blog_id }}.html">全部</a>
{% endif %} {% for row in type_list %}
{% if type_id == row.0 %}
<a class="btn btn-small active" href="artical-{{ row.0 }}-{{ blog_id }}.html">{{ row.1}}</a>
{% else %}
<a class="btn btn-small " href="artical-{{ row.0 }}-{{ blog_id }}.html">{{ row.1}}</a>
{% endif %}
{% endfor %}
</div>
<div class="catagory">
{% if blog_id == 0 %}
<a class="btn btn-small active" href="artical-{{type_id}}-{{0}}.html">全部</a>
{% else %}
<a class="btn btn-small" href="artical-{{type_id}}-{{0}}.html">全部</a>
{% endif %}
{% for row in catagory_list %}
{% if blog_id == row.nid %}
<a class="btn btn-small active" href="artical-{{type_id}}-{{row.nid}}.html">{{ row.title}}</a>
{% else %}
<a class="btn btn-small" href="artical-{{type_id}}-{{row.nid}}.html">{{ row.title}}</a>
{% endif %}
{% endfor %}
</div>
<div class="add"> </div>
</div>
</div> 而后台只是根据上面所对应的url对数据进行相应的增删改查,完成后放到前端进行显示即可,这点注意进行理解。 (2)、页码的显示 对取出来的东西进行分页时,参照已经封装好的page函数进行编写,最后放到页面进行显示即可。 2、保障系统的管理; 报障系统需要与权限挂钩,普通用户、老板以及工程师之间所显示的菜单都是有区别的
普通用户:只能填写故障的内容,然后查看故障处理的状态,以及详细的解决方案。
工程师:可以查看故障的具体情况,可以进行抢单,抢单完成后对订单进行编辑,并且还有自己的问题库,可以查看前期自己解决过的所有问题,
以大大增加解决问题的效率。
老板:可以看到所有工程师的工作情况,并显示所有工程师不同时间段处理订单的量。 在写的过程中需要注意下面几个问题:
在进行url跳转后需要对登录情况进行验证,防止其他人伪造url进行登陆后的破坏
在抢单完成后需要及时对问题的状态进行更改
接单的时候需要同时查看订单的状态以防止在抢订单过程中别人抢走,造成重复抢单的情况。
页面上对报障的功能根据状态的不同而有不同的显示,需要在前端对状态进行判断,根据不同的状态显示不同菜单。 个人博客总比较主要的几个问题都已进行记录,下篇文章将对在blog开发过程中存在的知识点的不足进行总结。
django——个人博客之分页/筛选功能的更多相关文章
- Django 系列博客(十六)
Django 系列博客(十六) 前言 本篇博客介绍 Django 的 forms 组件. 基本属性介绍 创建 forms 类时,主要涉及到字段和插件,字段用于对用户请求数据的验证,插件用于自动生成 h ...
- Django 系列博客(十)
Django 系列博客(十) 前言 本篇博客介绍在 Django 中如何对数据库进行增删查改,主要为对单表进行操作. ORM简介 查询数据层次图解:如果操作 mysql,ORM 是在 pymysql ...
- 纯django开发博客系统
企业级教程:纯django开发博客系统 1.视频教程 https://www.duanshuilu.com/ 2.教程文档 https://www.duanshuilu.com/ 0.课程简介1.简价 ...
- Django搭建博客网站(四)
Django搭建博客网站(四) 最后一篇主要讲讲在后台文章编辑加入markdown,已经在文章详情页对markdown的解析. Django搭建博客网站(一) Django搭建博客网站(二) Djan ...
- Django搭建博客网站(三)
Django搭建博客网站(三) 第三篇主要记录view层的逻辑和template. Django搭建博客网站(一) Django搭建博客网站(二) 结构 网站结构决定我要实现什么view. 我主要要用 ...
- Django练习——博客系统小试
在上一篇博客Todolist的基础上(http://blog.csdn.net/hcx25909/article/details/24251427),本周继续进行实践,这次我要搭建一个简单的博客系统. ...
- Django 系列博客(十三)
Django 系列博客(十三) 前言 本篇博客介绍 Django 中的常用字段和参数. ORM 字段 AutoField int 自增列,必须填入参数 primary_key=True.当 model ...
- Django 系列博客(十二)
Django 系列博客(十二) 前言 本篇博客继续介绍 Django 中的查询,分别为聚合查询和分组查询,以及 F 和 Q 查询. 聚合查询 语法:aggregate(*args, **kwargs) ...
- Django 系列博客(七)
Django 系列博客(七) 前言 本篇博客介绍 Django 中的视图层中的相关参数,HttpRequest 对象.HttpResponse 对象.JsonResponse,以及视图层的两种响应方式 ...
随机推荐
- 【记录】使用在线KMS激活win10系统
摘要 网上一些激活工具可能捆绑了木马.病毒.使用激活工具有风险.使用在线KMS来激活系统则没有这个风险.(自测至发布日期仍然可用) (有能力的请支持正版windows系统) 将kms服务器地址设置为k ...
- VUE路由新页面打开的方法总结
平常做单页面的场景比较多,所以大部分的业务是在同一个页面进行跳转.要通过VUE路由使用新页面打开且传递参数,可以采用以下两个方法: 1.router-link的target <router-li ...
- python day07
数据类型之间的相互转换 1.字符串转换成数字类型 判断哪些可以转换成数字型可以参考下面例题: # 判断实现将所有能转换为数字类型的字符串都转换为对应类型的数字# int: '10' = > 10 ...
- MyCP.java蓝墨云班课
题目要求: 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容 ...
- python open 函数的读写追加
- EasyUI的Datagrid鼠标悬停显示单元格内容
功能描述:table鼠标悬停显示单元格内容 1.js函数 function hoveringShow(value) { return "<span title='" + va ...
- MySQL--7种join连接
一,定义: 1)LEFT JOIN / LEFT OUTER JOIN:左外连接 左向外连接的结果集包括:LEFT OUTER子句中指定的左表的所有行,而不仅仅是连接列所匹配的行.如果左表的某行在右表 ...
- JS中的事件委托(事件代理)
一步一步来说说事件委托(或者有的资料叫事件代理) js中事件冒泡我们知道,子元素身上的事件会冒泡到父元素身上. 事件代理就是,本来加在子元素身上的事件,加在了其父级身上. 那就产生了问题:父级那么多子 ...
- centos7之zabbix的web检测
一.web监控 Web scenarios(Web 场景)是用来监控Web程序的,可以监控到Web程序的下载速度.返回码及响应时间,还支持把一组连续的Web动作作为一个整体进行监控. 1.web监控的 ...
- 2019春招面试高频题(Java版),持续更新(答案来自互联网)
第一模块--并发与多线程 Java多线程方法: 实现Runnable接口, 继承thread类, 使用线程池 操作系统层面的进程与线程(对JAVA多线程和高并发有了解吗?) 计算机资源=存储资源+计算 ...