1.安装django
pip install django
在python文件的Scripts下有django-admin.exe文件就说明安装成功
2.创建django项目
放django文件的的文件路径上输入cmd进入终端输入下面的命令
django-admin startproject 项目名称
3.app的创建
进入创建好的项目里面输入一下的命令
python manage.py startapp app名称
4.app注册
在setting.py文件下的INSTALLED_APPS ={ 'app名' }
5.编写url与视图函数的对应关系
(1)引入试图函数的py文件
from 注册是app名 import views
(2)访问连接与试图函数的联系
urlpatterns = [
path('index/', views.index)
]
说明:当遇到了index/就调用views.py文件内的index函数
6.views.py的试图函数编写
引入render和HttpResponse(render: 返回一个模板, HttpResponse:返回一串字符串)
from django.shortcuts import render, HttpResponse, redirect
视图函数:
def index(request): return HttpResponse("欢迎使用")或return render(request, "index.html")
重定向:
def index(request):
return redirect('https://www.baidu.com')
注意:模板写在app文件夹下的templates下
7.django的运行命令
python manage.py runserver
8.请求和响应
views.py视图函数参数request
request.method: 得到请求的方式(POST、GET)
request.GET: 获取url中传过来的参数
request.POST: 获取请求体中传过来的参数
9.创建数据库
(1) win+r进入终端
(2) 打开mysql输入: mysql -u root -p
(3) 创建数据库: create database 数据库名 default charset utf8 collate utf8_general_ci;
(4) 安装包: pip install mysqlclient 和 pip install pymysql
(5)在setting.py配置数据库:
# 配置了下面的 django就会默认的帮我们连接上数据库
DATABASES = {
'default': {
# 连接什么类型的数据库
'ENGINE': 'django.db.backends.mysql',
# 数据库名字
'NAME': 'gx_day15',
# 数据口账号
'USER': 'root',
# 数据库密
'PASSWORD': '',
# 数据库是安装在哪台服务器上 自己本地的是 127.0.0.1
'HOST': '127.0.0.1',
# 数据库的端口
'PORT': '3306'
}
}
10. orm类创建表
(1) 引入: from django.db import models
(2) 定义一个类:
例如:
class UserInfo(models.Model):
name = models.CharField(max_length=32)
password = models.CharField(max_length=64)
age = models.IntegerField()
(3)终端中输入这个两命令在数据库中建表
python manage.py makemigrations
python manage.py migrate
11. 修改表
删除:直接在orm类中直接删除字段 运行python manage.py makemigrations、python manage.py migrate
添加: 表中已有5条数据,你添加新字段时,运行python manage.py makemigrations、python manage.py migrate,出现两个选择:
选1:输入一个1, 5条数据后面新增的字段值都为1
选2:输入一个1, 相当于给5条数据的值默认为1,然后再执行上面的两条命令
12.删除表
如果注释一个orm表,运行两条命令就会删除这个表
13.增、删、改、查
增:orm类名.objects.create(表字段1=字段1值,表字段2=字段2值)
删: orm类名.objects.filter(id=1).delete() //删除id为1的数据
orm类名.objects.all().delete() //删除这个表的全部数据
改:(更新):orm类名.objects.filter(id=1).uplate(age=99) //把id为1的改为99
查: orm类名.objects.filter(id=1) //查询id为1的数据