day54 django中orm数据库增删改查
昨日内容回顾
三板斧问题
HttpResponse # 返回的是字符串 render # 渲染一个HTML静态文件,模板文件 redirect # 重定向的 """在视图文件中得视图函数必须要接收一个形参request,并且,视图函数也要有返回值:HttpResponse对象"""
配置文件
settings.py文件就是Django框架的全局文件 注册应用 database templates 调试模式 静态文件的配置 语言的修改 时区的修改
静态文件的配置
静态文件是什么?cssjsimg第三方的前端框架第三方工具# 我们一般把HTML的静态文件放在templates文件夹下,静态文件放在哪里呢? 一般放在static文件夹
我们要手动的帮助我们创建static文件夹
staticcssjsimg...
# 还需要在配置文件中配置一些数据
STATIC_URL='/static/'
STATICFILES_DIRS=[os.path.join(BASE_DIR,'static'),os.path.join(BASE_DIR,'static1'),os.path.join(BASE_DIR,'static2')
]
## 前端页面中得路劲
/static/css/my.css
## 动态解析
{% load static %}
{% static 'css/my.css' %}
# 千万不要按照前端里的路径查找方法了
request对象的方法
request.method # 潘墩请求方式的 GET POST request.POST.get() request.POST.getlist() request.GET.get() request.GET.getlist()
django链接MySQL
1. 在配置文件中配置一个数据
DATABASES={'NAME':'HOST':'PORT':'USER':'PASSWORD':'CHARSET':
}
2. 在任意的__init__文件中条件两句话
import pymysql
pymysql.install_as_mysqldb()
3. opertions.py-------->会报错
decode------->encode
orm简介
对象映射模型 类-------->表名 对象-------->记录 属性-------->字段 # 在models.py文件中书写 class UserInfo(models.Model):aid = models.AutoField(primary_key=True)username = models.CharField(max_length=32)# 迁移数据库 python3 manage.py makemigratinos python3 manage.py migrate # 字段的增删改查
今日内容概要
-
数据的增删改查(insert update delete select)
-
如何创建表关系(一对一 一对多 多对多)
-
Django框架的请求生命周期流程图(帮助你梳理Django的执行流程)
-
路由层
-
无名分组 有名分组(正则表达式)
-
反向解析
-
虚拟环境
-
路由分发
今日内容详细
数据的增删改查(insert update delete select)
1. 用户列表的展示# 把数据表中得用户数据都给查询出来展示在页面上添加数据id username password gender age action修改 删除2. 修改数据的逻辑分析# 1. 先确定修改哪条记录------>怎么样确定修改哪条记录?# 2. 通过什么字段可以确定唯一一条记录? 主键id,要携带主键id到后端.# 3. 在后端接收主键id值,然后根据这个id值再去表中查询数据,查询一条# 4. 然后把查询的数据在渲染到页面中,然后在修改# 5. 把修改之后的表单提交到后端,在做修改3. 删除功能的分析# 1. 给删除按钮加一个链接,携带当前记录的id值# 2. 后端要接收这个主键id值# 3. 后端直接执行删除操作
如何创建表关系(一对一 一对多 多对多)
""" 一对一 一对多 多对多 没有关系 """ 图书表 出版社表 作者表 作者详情表 ### 换位思考法判断表关系 图书表和出版社表 >>> 一对多 >>> 图书表是多,出版社是一 >>> 建在多的一方 图书表和作者表 >>> 多对多 >>> 需要第三张表 作者表和作者详情表 >>> 一对一 >>> 外键字段一般建在查询频率较高的 ### 在Django中如何创建表关系 """回头复习表关系""" #######################################django1.x####################################### class Book(models.Model):title = models.CharField(max_length=64)"""max_digits=None,:总位数decimal_places=None:小数位数"""# price decimal(8,2)price = models.DecimalField(max_digits=8, decimal_places=2)# publish_id = models.ForeignKey(to='Publish', to_field='id')"""对于外键字段关系,会自动帮我们拼接_id"""publish = models.ForeignKey(to='Publish')"""authors它是一个虚拟字段,它不会实际在表中创建出来这个字段,这一句可以自动帮助我们创建出来第三张表"""authors = models.ManyToManyField(to='Author') """出版社表""" class Publish(models.Model):name = models.CharField(max_length=64)addr = models.CharField(max_length=64) """作者表""" class Author(models.Model):name = models.CharField(max_length=64)author_detail = models.OneToOneField(to='AuthorDetail') """作者详情表""" class AuthorDetail(models.Model):phone = models.CharField(max_length=64)email = models.CharField(max_length=64)
Django的请求生命周期流程图
"""它可以帮助你们熟练django的一个完整执行流程"""
相关文章:
day54 django中orm数据库增删改查
昨日内容回顾 三板斧问题 HttpResponse # 返回的是字符串 render # 渲染一个HTML静态文件,模板文件 redirect # 重定向的 """在视图文件中得视图函数必须要接收一个形参request,并且,视图…...
【js逆向实战】某sakura动漫视频逆向
写在前面 再写一个逆向实战,后面写点爬虫程序来实现一下。 网站简介与逆向目标 经典的一个视频网站,大多数视频网站走的是M3U8协议,就是一个分段传输,其实这里就有两个分支。 通过传统的m3u8协议,我们可以直接进行分…...
L2-015 互评成绩
学生互评作业的简单规则是这样定的:每个人的作业会被k个同学评审,得到k个成绩。系统需要去掉一个最高分和一个最低分,将剩下的分数取平均,就得到这个学生的最后成绩。本题就要求你编写这个互评系统的算分模块。 输入格式…...
【Docker安装RockeMQ:基于Windows宿主机,并重点解决docker rocketMQ安装情况下控制台无法访问的问题】
拉取镜像 docker pull rocketmqinc/rocketmq创建网络 docker network create rocketmq-net构建namesrv容器 docker run -d -p 9876:9876 -v D:/dockerFile/rocketmq/namesrv/logs:/root/logs -v D:/dockerFile/rocketmq/namesrv/store:/root/store --network rocketmq-net -…...
Android Studio——android项目运行main()函数
报错: 解决: 如图,在 .idea 的 gradle.xml 中标注的位置增加如下一行代码即可<option name"delegatedBuild" value"false" />...
移动医疗科技:开发互联网医院系统源码
在这个数字化时代,互联网医院系统成为了提供便捷、高效医疗服务的重要手段。本文将介绍利用移动医疗科技开发互联网医院系统的源码,为医疗行业的数字化转型提供有力支持。 智慧医疗、互联网医院这一类平台可以通过线上的形式进行部分医疗服务ÿ…...
代码审计, 介绍, 思路总结
代码审计 一, 代码审计介绍 渗透测试中的代码审计是一个关键步骤,它涉及到深入检查应用程序的源代码,以发现安全漏洞、弱点或不合规的编码实践。这种审计通常由专业的安全工程师或渗透测试人员执行,并侧重于识别可能被黑客利用的安全缺陷。…...
2023NOIP A层联测27 总结
T1 一棵树,操作是把一个点染黑,查询点 x x x 到黑点路径上的最小编号, n ≤ 1 0 6 n\le10^6 n≤106。当时的思路是把树分成几部分,中间和周围的散块,发现不会,就没思路了,就去打了25pts暴力。赛…...
2022最新版-李宏毅机器学习深度学习课程-P34 自注意力机制类别总结
在课程的transformer视频中,李老师详细介绍了部分self-attention内容,但是self-attention其实还有各种各样的变化形式: 一、Self-attention运算存在的问题 在self-attention中,假设输入序列(query)长度是N…...
css sprite 的优缺点,使用方法和示例
CSS Sprite是一种网页图片应用处理方式。 CSS Sprite的原理是将一个网页或者一个模块所用到的零碎的icon整合拼接到一张大图里,再把这张大图作为背景图放入到网页中,当访问该页面时,加载的图片就不会像以前那样一幅一幅地慢慢显示出来了。 …...
通过Cookie和Session来实现网站中登录账号的功能
文章目录 一、Cookie和Session二、基于Cookie和Session实现登录账号的功能2.1步骤一2.2步骤二2.3步骤三2.4总结通过Cookie和Session来实现登录功能2.5运行截图 一、Cookie和Session cookie是http请求header中的一个属性,是浏览器持久化存储数据的一种机制ÿ…...
QWidget 实现九宫格图案解锁
前言 最近需要实现一个九宫格图案解锁功能,查看网上的方案,基于QWidget的方案全网搜来搜去就一篇 Qt编写自定义控件:图案密码锁, 都是炒来炒去的同一篇,代码还比较复杂,运行后在PC端还是可以的,但是运行在arm机器上,就卡顿,或者容易断开手势连接线,各种不友好,于是自…...
设计模式-适配器模式(Adapter)
设计模式-适配器模式(Adapter) 一、适配器模式概述1.1 什么是适配器模式1.2 简单实现适配器模式1.3 使用适配器模式注意事项 二、适配器模式的用途三、实现适配器模式的方式3.1 继承适配器模式(Inheritance Adapter)3.2 组合适配器…...
react:创建项目
一: 使用create-react-app // 默认创建reactjs的webpack打包项目 npm i create-react-app -g create-react-app 项目名// 创建ts项目打包项目 sudo npx create-react-app my-app --template typescript 二: 使用vite npm create vitelatest // 创建react…...
RabbitMQ集群
RabbitMQ概述 1.RabbiMQ简介 RabbiMQ是⽤Erang开发的,集群⾮常⽅便,因为Erlang天⽣就是⼀⻔分布式语⾔,但其本身并不⽀持负载均衡。支持高并发,支持可扩展。支持AJAX,持久化,用于在分布式系统中存储转发消…...
Qt QtCreator调试Qt源码配置
目录 前言1、编译debug版Qt2、QtCreator配置3、调试测试4、总结 前言 本篇主要介绍了在麒麟V10系统下,如何编译debug版qt,并通过配置QtCreator实现调试Qt源码的目的。通过调试源码,我们可以对Qt框架的运行机制进一步深入了解,同时…...
JavaScript如何实现钟表效果,时分秒针指向当前时间,并显示当前年月日,及2024春节倒计时,源码奉上
本篇有运用jQuery,记得引入jQuery库,否则不会执行的喔~ <!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title></title> <meta name"chenc" content"Runoob"> <met…...
重生奇迹MU套装大全中的极品属性
在重生奇迹MU之中,你不能如其他游戏一般只看攻击与防御,你更要看属性,这才是重生奇迹中的王道!属性好,才是极品,属性不佳,即便攻击、防御再出色,也只能沦落成为一件替用品࿰…...
用Python解决猴子分桃问题
1 问题 海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子平均分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中…...
YOLOv8-Seg改进:分割注意力系列篇 | 新型的多尺度卷积注意力(MSCA)模块
🚀🚀🚀本文改进: 新型的多尺度卷积注意力(MSCA)模块,实现创新,MSCA包含三个部分:深度卷积聚合局部信息,多分支深度条卷积捕获多尺度上下文,以及11卷积建模不同通道之间的关系。 🚀🚀🚀MSCA多尺度特性在小目标分割检测领域表现优异 🚀🚀🚀YOLOv8-seg…...
量子纠错码权重降低技术原理与应用
1. 量子纠错码权重降低技术概述量子纠错码的权重降低技术是现代量子计算容错架构的核心组件之一。这项技术的本质是通过数学重构,将原本需要与大量校验子相互作用的高权重量子比特,转换为仅需与少数校验子交互的低权重版本。这种转换在硬件实现层面具有革…...
SAP运输路径与运费计算:从基础配置到实战结算
1. SAP运输路径与运费计算的核心逻辑 第一次接触SAP运输管理模块时,我被那些密密麻麻的配置选项弄得头晕眼花。直到真正理解了它的底层逻辑,才发现这套系统设计得相当精妙。简单来说,运输路径就是货物从A点到B点的路线图,而运费计…...
别再死记硬背SVD了!用Python从零手搓一个共现矩阵(附完整代码与可视化)
从零构建共现矩阵:Python实战与可视化解析 在自然语言处理领域,词向量表示一直是核心课题。传统方法如TF-IDF虽然简单有效,但无法捕捉词语间的语义关系。共现矩阵(Co-Occurrence Matrix)通过统计词语在上下文窗口中的共…...
LeRobot机器人AI控制框架终极指南:5分钟快速上手实战教程
LeRobot机器人AI控制框架终极指南:5分钟快速上手实战教程 【免费下载链接】lerobot 🤗 LeRobot: Making AI for Robotics more accessible with end-to-end learning 项目地址: https://gitcode.com/GitHub_Trending/le/lerobot LeRobot是Hugging…...
claude学习
后面会随着对claude的学习加深会逐渐更新的 文章目录后面会随着对claude的学习加深会逐渐更新的前言一、claude的三种模式二、阿里云千锤百炼前言 https://www.bilibili.com/video/BV1wuQEBDEN8/?spm_id_from333.337.search-card.all.click&vd_sourceeb433c8780bdd700f49…...
别再被‘HDR400’忽悠了!手把手教你读懂VESA DisplayHDR认证,买显示器不踩坑
别再被‘HDR400’忽悠了!手把手教你读懂VESA DisplayHDR认证,买显示器不踩坑 走进任何一家电子产品卖场或打开电商平台,显示器的宣传页上总能看到"HDR400"、"HDR600"这样的标签。这些看似专业的认证标识背后,…...
3步完成跨平台资源嗅探:从微信视频号到QQ音乐的万能下载器
3步完成跨平台资源嗅探:从微信视频号到QQ音乐的万能下载器 【免费下载链接】res-downloader 视频号、小程序、抖音、快手、小红书、直播流、m3u8、酷狗、QQ音乐等常见网络资源下载! 项目地址: https://gitcode.com/GitHub_Trending/re/res-downloader 在数字…...
OpenCV主库与Contrib扩展版本匹配避坑指南:以Ubuntu 22.04 + OpenCV 4.5.5为例
OpenCV主库与Contrib扩展版本匹配避坑指南:以Ubuntu 22.04 OpenCV 4.5.5为例 在计算机视觉开发中,OpenCV无疑是最受欢迎的库之一。然而,许多开发者在尝试扩展OpenCV功能时,常常会遇到一个看似简单却令人头疼的问题:主…...
哪些话,最容易一句话把网络工程师整破防
很多人觉得网络工程师脾气好、话不多、好沟通。 其实不是他们好说话,而是他们见过太多“离谱问题”,已经练出了表面平静的能力。 但有些话,只要你说出口,哪怕是经验再老的网工,内心都会“轻微炸一下”。 今天这篇,就不讲命令、不讲协议,聊点更真实的—— 哪些话,最…...
3步掌握PinWin:让你的重要窗口永远置顶的Windows神器
3步掌握PinWin:让你的重要窗口永远置顶的Windows神器 【免费下载链接】PinWin Pin any window to be always on top of the screen 项目地址: https://gitcode.com/gh_mirrors/pin/PinWin 你是否曾在多任务处理时频繁切换窗口,打断工作流…...
