首页 > 其他分享 >Django3

Django3

时间:2023-11-10 19:44:08浏览次数:30  
标签:models max Django3 length 64 CharField id

数据的增删改查

如何创建表关系

Django框架的请求生命周期流程图

路由曾

无名分组 有名分组

————————————————————————————————————————————————————————————————————————————————————————————————————

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)

 

 

 

 

 

 

浏览器
发送请求(HTTP协议)

web服务网关接口
1.请求来的时候解析封装
响应走的时候打包处理

2.django默认的wsgiref模块不能承受高并发 最大只有1000左右
上线之后会替换成uwsgi来增加并发量

3.WSGI跟wsgiref和uwsgi是什么关系
WSGI是协议
wsgiref和uwsgi是实现该协议的功能模块

django后端
1.django中间件(暂时不考虑 后面讲)
类似于django的保安 门户

2.urls.py 路由层
识别路由匹配对应的视图函数

3.views.py 视图层
网站整体的业务逻辑

4.templates文件夹 模版层
网站所有的html文件

5.models.py 模型层
ORM
额外扩展:缓存数据库的作用

 

标签:models,max,Django3,length,64,CharField,id
From: https://www.cnblogs.com/wzh366/p/17824897.html

相关文章

  • 前后端分离实现注册+登录(Vue3.0 + Django3.2)
    博客地址:https://www.cnblogs.com/zylyehuo/一、使用vite+webstorm搭建Vue环境,构建前端1、结构树2、main.jsimport{createApp}from'vue'//import'./style.css'importAppfrom'./App.vue'importrouterfrom"./utils/router";......
  • Django3中分组查询的一个坑
    最近在学习django的分组查询,发现使用通常的values加annotate方法,获取不到我想要的结果,后来通过查询官方文档得到答案一、问题描述1.1模型fromdjango.dbimportmodels#Createyourmodelshere.classGoods(models.Model):g_name=models.CharField(max_length=......
  • django3.0异步、提高项目并发量
    1补充django3.0#补充:django3.0以后支持异步-ASGI:WSGI是基于HTTP协议模式的,不支持WebSocket(需要其他模块处理,eg:channels)ASGI的诞生则是为了解决Python常用的WSGI,不支持当前Web开发中的一些新的协议标准,例如:websocket,http2的协议,且还支持异步-django......
  • Django3.2知识点
    Django3.2前言之前我们介绍过web应用程序和http协议,简单了解过web开发的概念。Web应用程序的本质接收并解析HTTP请求,获取具体的请求信息处理本次HTTP请求,即完成本次......
  • Django3.X使用富文本编辑器kindereditor上传图片时一直转圈圈,如何解决
    问题描述:在写bbs项目的时候,老师用的是Django1.X结合富文本编辑器kindeditor,实现了图片上传,但是我在用Django3.X的时候,代码和老师一模一样,上传图片的时候一直转圈圈???但是文......
  • Django3 使用xadmin
    xadmin下载地址:https://github.com/vip68/xadmin_bugfix下载完之后解压,只需要把里面的xadmin文件夹和requirements.txt文件复制到项目根目录下,然后在终端执行pipinstall......
  • Django3
    django请求生命周期流程图1.Django请求的生命周期的含义Django请求的生命周期是指:当用户在浏览器上输入URL到用户看到网页的这个时间段内,Django后台所发生的事情。2.Dj......
  • 巨蟒python全栈开发django3:url&&视图
    1.url正则匹配分组和命名分组2.路由分发3.url别名和反向解析4.httprequest和httpresponse的使用 内容回顾:1.jinja2(flask框架,没有内置模板对象,需要自己用jinja2)......
  • Django3.2整站开发
    DTL模版引擎模版配置第一步:在项目配置文件中配置模版引擎相关的配置,Django默认引擎为DTL。TEMPLATES=[{ #配置模版引擎,默认使用DjangoTemplateLangua......
  • Django3.2前后端分离(配置)
    创建工程项目1.初始化项目步骤一:安装Django框架,安装前应确保Django的版本为LTS版,关于版本的描述见Django版本文档pipinstalldjango==3.2步骤二:创建django项目,通过d......