1 1.创建一个数据库create database user,并进行settings.py数据库部分的配置
2 DATABASES = {
3 'default': {
4 'ENGINE': 'django.db.backends.mysql',
5 'NAME': 'user',
6 'HOST':'localhost',
7 'PORT':3306,
8 'USER':'root',
9 'PASSWORD':'root',
10 }
11 }
12 2.创建模型类,即在models.py里写模型类
13
14 from django.db import models
15
16 class User(models.Model):
17 username=models.CharField(max_length=20,null=False)
18 password=models.CharField(max_length=30,null=False)
19 email=models.EmailField(max_length=200)
20 sex=models.SmallIntegerField(choices=(
21 (1,'男'),(0,'女')
22 ),default=0)
23 age=models.SmallIntegerField()
24 tel=models.CharField(max_length=11)
25
26 3.执行数据迁移 提示:执行这两个命令时,请确保已经把当前应用在INSTALLED_APPS中添加了
27 python manage.py makemigrations
28 python manage.py migrate
29
30 4.静态文件add.html
31
32 <!DOCTYPE html>
33 <html lang="en">
34 <head>
35 <meta charset="UTF-8">
36 <meta name="viewport" content="width=device-width, initial-scale=1.0">
37 <meta http-equiv="X-UA-Compatible" content="ie=edge">
38 <title>添加用户</title>
39 </head>
40 <body>
41 <form action="{% url 'add_user' %}" method="POST">
42 {% csrf_token %}
43 <div>
44 <label for="username">用户名</label>
45 <input type="text" name="username" id="username">
46 </div>
47 <div>
48 <label for="password">密码</label>
49 <input type="password" name="password" id="password">
50 </div>
51 <div>
52 <label for="email">邮箱</label>
53 <input type="text" name="email" id="email">
54 </div>
55 <div>
56 <label for="age">年龄</label>
57 <input type="text" name="age" id="age">
58 </div>
59 <div>
60 <label>性别</label>
61 <label for="">男</label>
62 <input type="radio" name="sex" value="1">
63 <label for="">女</label>
64 <input type="radio" name="sex" value="0">
65 </div>
66 <div>
67 <label for="tel">电话</label>
68 <input type="text" name="tel" id="tel">
69 </div>
70 <div>
71 <button>添加</button>
72 </div>
73 </form>
74 </body>
75 </html>
76
77 5.视图文件views.py
78
79 # 视图函数,就是一个普通的python函数
80 # django对视图函数的要求是:
81 # 1. 必须接收一个参数 HttpRequest 对象
82 # 2. 必须返回一个对象 HttpResponse 对象
83
84 from django.shortcuts import render
85 from django.http import HttpResponse
86 from .models import User
87
88 def add_page(request):
89 return render(request,'add.html')
90
91 # 渲染添加用户的页面给客户端浏览器
92 def add_user(request):
93 # request 是HttpRequest对象,包含了客户端请求中的数据信息
94 # request.POST 一个字典,包含了POST方式请求中的数据,键为表单元素的name属性,值为表单元素的值
95 # 1. 从客户端请求中接收数据
96 username=request.POST.get('username')
97 password=request.POST.get('password')
98 email=request.POST.get('email')
99 age=request.POST.get('age')
100 sex=request.POST.get('sex')
101 tel=request.POST.get('tel')
102 # 2. 执行数据库的添加操作,数据库操作是通过模型类完成
103 # model.objects.create(字段=值) 创建数据,返回被添加的数据对象
104 user=User.objects.create(username=username,password=password,email=email,age=age,sex=sex,tel=tel)
105 if user is not None:
106 return HttpResponse('添加成功')
107 else:
108 return HttpResponse('添加失败')
109
110 6.路由文件
111
112 from django.urls import path
113 from . import views
114
115 urlpatterns=[
116 path('add_page/',views.add_page,name='add_page'),
117 path('add_user/',views.add_user,name='add_user'),
118 ]