本文初衷,记录一下午时间,学习到的login界面的后端数据库连接操作,大致实现内容:login的表单post内容读取+mysql数据库存储。
01 文件目录
02 login.html文件
<body>
<form action="/logininfo/" method="get">
账号是:<input type="text" name="name">
密码是:<input type="password" name="pwd">
<input type="submit" value="登录">
</form>
</body>
03 model文件
在model文件中,建立数据库,配置基本参数。(根据view文件中)
from django.db import models
# Create your models here.
class UserInfo2(models.Model):
id=models.AutoField(primary_key=True)
name=models.CharField(max_length=32)
password=models.CharField(max_length=32)
04 view文件
在视图文件中,定义具体的函数。
一是login函数。直接返回login.html
二是logininfo函数,获取post的name和password,并存储在03中建立的数据库中。,
from django.shortcuts import render,HttpResponse
from ces.models import UserInfo2
# Create your views here.
def login(request):
return render(request,'login.html')
def logininfo(request):
#request.GET返回字典数据类型
name=request.GET.get('name')
password=request.GET.get('pwd')
if not all([name,password]):
return HttpResponse(
'数据不完整'
)
try:
obj1=UserInfo2.objects.create(name=name,password=password)#在数据库中存储该条数据
except Exception as e:
return HttpResponse('数据保存失败')
return HttpResponse('Ok')
05 具体执行
- 建立数据库,使用mysql语句。
- mysql> show databases;——显示已有数据库
- mysql> create database DATABASENAME;
- 本项目使用的执行语句为:
- mysql> create TABLE ceshi.ces_userinfo2 ;
- mysql> create database ceshi;
在urls.py文件中,添加网页索引,
from ces import views
urlpatterns = [
path('admin/', admin.site.urls),
path('login/',views.login),
path('logininfo/',views.logininfo)
]
在setting.py中,更改如下内容:
DATABASE部分的语句更改为:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME':'ceshi', # 要连接的数据库,连接前需要创建好 'USER':'root', # 连接数据库的用户名 'PASSWORD':'123456', # 连接数据库的密码 'HOST':'127.0.0.1', # 连接主机,默认本级 'PORT':3306 # 端口 默认3306 } }
最后,添加一行:
在Gjango project的init文件夹下,添加:
import pymysql pymysql.install_as_MySQLdb()
之后,在terminal界面中执行如下语句:
python manage.py makemigrations
python manage.py migrate
运行效果如下:
在之后,可以执行Djiango项目,在界面中输入用户名和密码后,可以在数据库中,找到输入的信息。
到此,结束。
本机地址:E:\python project\djangoProject11