IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Django - 边学Django边写毕业设计(day17 公告和项目操作) -> 正文阅读

[Python知识库]Django - 边学Django边写毕业设计(day17 公告和项目操作)

2021.10.10

1.公告展示

  1. 对查询数据进行排序:filter(xxx).order_by(“根据哪个字段正向排序”),如果是"-字段",则是根据该字段反向排序。
  2. 欲将新公告置于上方,需要先反向排序再渲染回页面
  3. 新添加了一个是否为新通知,默认为新,每次进入到detail视图函数时,遍历查找出来的数据,进行时间判断,这边要注意date()和datetime()之间不能相加减,当前时间-发布时间会得到一个timedelta对象,通过timedelta对象的.days()方法得到相差时间,超过一天则将对应数据的is_new修改为False。
  4. 在html中,判断is_new如果为True则通知前面多加一个new标签。

2.对项目操作

  1. 优化了消息提示,如果有未处理的消息,会有小红点,并展示几条消息未处理。(与项目操作无关,纯粹刚好想到)
  2. 如果表单POST的参数不必要输入,则用一个 直接给值,值当然也是动态生成的,只是渲染的页面是固定的。

例子:写修改项目信息,只可修改项目名和项目介绍,单单这两个参数传到视图函数是无法定位是要对哪条数据进行修改的,所以我写了个隐藏的input,value是从detail渲染过来的project取id。传到视图函数,视图函数做一个id查询就可以找到要修改的数据了。

  1. {% csrf_token %}一定要放在form标签下一行,刚才犯了个错,就是把隐藏的input写在了{% csrf_token %}之上,会报403。

  2. 如果是通过form表单修改数据,一定要在实例化form表单的时候加instance如下。
    在这里插入图片描述
    如果是save()保存之前,有一列是必须添加但表单没有的数据,也是用instance。例如:form.instance.project_id=project_id

  3. 接下来是删除项目,当然修改项目信息和删除项目只有创建者才展示。这里删除项目直接用a标签 type=button,与修改项目信息共用一个视图函数,因为修改项目信息只用了post。

前面用隐藏的input post过来的project_id,所以我们这没再另加参数,而是直接在a标签的href中加信息,通过GET获取。
如下图:
href="{% url ‘xxx’ %}?xx=xxxx"的方式直接拼接
视图函数用request.GET.get(‘xx’)来获取值
在这里插入图片描述

  1. 然后写到这注意到一个问题,就是如果有人知道某个url对应是做什么的,可以直接get来篡改别人的数据,所以得在有敏感信息的没有展示出来的功能视图函数中,添加一个判断是否是本人操作。不是则直接return
  2. 对项目的操作,参与者只有退出的按钮。
  3. 退出和删除,这种直接删除数据的操作,需要稍加确认一下,模态框提示:是否确认删除,删除的a标签实际上是模态框的确认按钮。只有点了确认才会删除。

3.今天就到这

今天算是把项目详情页的空白区域内容和功能都填上了。
明天开始做其他部分的功能,包括:
文档库、文件库、统计。

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-10-11 17:28:47  更:2021-10-11 17:30:19 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 18:15:20-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码