zoukankan      html  css  js  c++  java
  • 用户信息添加数据库

      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 ]

  • 相关阅读:
    Android listview addHeaderView 和 addFooterView 详解
    android NDK 生成so 文件流程-ecplice
    PopupWindow+ListView+OnItemClick点击无效
    绘制圆动画--重写view
    绘制 ToggleButton --重写view
    ProgressBar 源码
    android rectF
    ActionBar
    Android源码
    子线程更新主线程的方法-转
  • 原文地址:https://www.cnblogs.com/zpdbkshangshanluoshuo/p/10434569.html
Copyright © 2011-2022 走看看