路由系统
一、静态路由
二、动态路由
按照顺序,第N个匹配的数据,交给函数的第n 个参数,严格按照顺序执行
模板的方式,将匹配的参数传给指定的形式参数
三、二级路由
app01
urls.py
project_name
URL: app01 --> include(’‘app01.url") 包含app01 的都转换到include(’'app01.url")
数据库的操作
ORM 框架
code first # 创建数据的东西代码优先
自己写类 -> 数据库表
db first
自己命令数据库表和字典。--> 创建类
使用类进行数据操作
1、创建类;
2、配置
3、使用命令根据类创建表
python3 manage.py makemigrations #生成配置文件
python3 manage.py migrate # 根据配置文件创建数据库相关的表
![在这里插入图片描述](https://img-blog.csdnimg.cn/20210601172030831.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQzNTQxNjIy,size_16,color_FFFFFF,t_70)
4、默认表名
appname_classname
注意:此处连接了dbeaver ![在这里插入图片描述](https://img-blog.csdnimg.cn/20210601171848518.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQzNTQxNjIy,size_16,color_FFFFFF,t_70)
5 、数据库的增删改查
5.1增加了一条数据信息
###5.2 删除、修改、查找
# 视图的配置
from django.shortcuts import render # 使用模版时的选择
from django.shortcuts import HttpResponse
# Create your views here.
from app01 import models
def welcome(request):
# print('gavin_test-url:ok')
print(request)
#rawData = json.dumps(mapRaw().readdate())
#print (rawData)
#return render(request,'monitor/welcome.html',{'announcement_lists':announcement_list,'globalData':rawData})
return render(request, 'welcome.html')
def news(request):
return render(request, 'news.html')
def db_handel(reqeest):
# models.UserInfo.objects.create(username='wang', password='gavin', age='99')
dict1 = {"username": 'wang', "password": 'gavin', "age": '99'}
models.UserInfo.objects.create(**dict1) # **dict 表示传入多个参数
# 删除
models.UserInfo.objects.filter(username='han').delete() # 删除一个数据
# 修改
models.UserInfo.object.all().update(age=99)
# 查找
models.UserInfo.object.all() # 查找全部数据
models.UserInfo.object.filter(age=99) # 查有所哟年龄为18岁的
models.UserInfo.object.filter(age=99).first() # 查找年龄的第一个数据
return render(reqeest, 'db.html')
6 静态文件的处理
6.1 post的方式提交数据
setting 的操作:
注销这一行
'django.middleware.csrf.CsrfViewMiddleware'