用户信息添加数据库

  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 ]

猜你喜欢

转载自www.cnblogs.com/zpdbkshangshanluoshuo/p/10434569.html