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开发过程中存在的知识点的不足进行总结。

原文地址:https://www.cnblogs.com/guoxccu/p/9520882.html

时间: 2024-10-04 23:30:03

django——个人博客之分页/筛选功能的相关文章

Django搭建博客网站(三)

Django搭建博客网站(三) 第三篇主要记录view层的逻辑和template. Django搭建博客网站(一) Django搭建博客网站(二) 结构 网站结构决定我要实现什么view. 我主要要用view展示首页,标签页,网站管理员(也就是本人啦)信息页,以及文章详情页. settings.py 因为到这个阶段需要编写html文件了,但是每一个网页的每一行代码都靠自己去写,各种渲染也靠自己去写的话,太麻烦了,Django提供了html模板功能,可以在settings.py里面进行配置. #

Django搭建博客网站(四)

Django搭建博客网站(四) 最后一篇主要讲讲在后台文章编辑加入markdown,已经在文章详情页对markdown的解析. Django搭建博客网站(一) Django搭建博客网站(二) Django搭建博客网站(三) 要用到的package django-pagedown markdown2 django-pagedown用来在后台生成markdown编辑器,markdown2则是用来将markdown解析成html显示在网页上. install $ pip install django-

Django 系列博客(二)

Django 系列博客(二) 前言 今天博客的内容为使用 Django 完成第一个 Django 页面,并进行一些简单页面的搭建和转跳. 命令行搭建 Django 项目 创建纯净虚拟环境 在上一篇博客中已经安装好了虚拟环境,所以用虚拟环境来安装指定版本的 Django.为了可以从头到尾的走一遍流程,我重新创建了一个虚拟环境. 激活虚拟环境并安装 Django 首先进入虚拟环境路径下的 bin 目录 使用命令激活虚拟环境 安装指定版本 Django 首先使用 pip3 list 命令查看 可以看到

Django 系列博客(七)

Django 系列博客(七) 前言 本篇博客介绍 Django 中的视图层中的相关参数,HttpRequest 对象.HttpResponse 对象.JsonResponse,以及视图层的两种响应方式 CBV 和 FBV,还有简单的文件上传. 视图函数 一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应.响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. . . 是任何东西都可以.无论视图本身包含什么逻辑,都要返回

Django 系列博客(十三)

Django 系列博客(十三) 前言 本篇博客介绍 Django 中的常用字段和参数. ORM 字段 AutoField int 自增列,必须填入参数 primary_key=True.当 model 中如果没有自增列,则会自动创建一个列名为 id 的列. IntegerField 一个整数类型,范围在-2147483648 to 2147483647. CharField 字符类型,必须提供max_length参数, max_length表示字符长度. DateField 日期字段,日期格式

Django 编写博客网站的用户管理部分(采用自有的 django.contrib.auth) 2. 登陆登出和用户信息管理

续前Django 编写博客网站的用户管理部分(采用自有的 django.contrib.auth) 1. 注册部分 项目工具:Python 2.7.11  Django 1.10.2  Bootstrap 3.3.0   IDE:eclipse Pydev 1. 由于Django自带auth, 故仅需编写登录登出的url和template即可 urls常见上篇 template代码如下仅供参考: login 1 {% extends "account_base.html" %} 2 3

打赏:关于博客园打赏的功能

今天在网上浏览资料的时候,发现别的博主都有打赏功能了,感觉很好奇,试了试几种方法,最后也把这个博客园的打赏功能弄出来了.大家好奇么,想知道怎么做到的朋友,请留言~~~ 欧耶欧耶~~~

Django开发博客(基础篇)

Django开发博客(基础篇)http://www.itmin.cn/archives/918

Django搭建博客网站(二)

Django搭建自己的博客网站(二) 这里主要讲构建系统数据库Model. Django搭建博客网站(一) model 目前就只提供一个文章model和一个文章分类标签model,在post/models.py中做如下修改: # models.py from django.db import models class PostTag(models.Model): tag_name = models.CharField(max_length=50) def __str__(self): retur