python Django编写登录项目
Django 目录结构:

__init__.py 文件:
import pymysql pymysql.install_as_MySQLdb()
注意:如果 import pymysql 的时候报红,请安装 pymysql

输入 cmd 回车

setting.py 文件 配置 mysql 数据库:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'magriculture', # 确保数据库已经存在
'HOST': '127.0.0.1',
'PORT': '',
'USER': 'root',
'PASSWORD': '',
}
}
model.py 文件 创建数据表:
from django.db import models # Create your models here. # 创建管理员表
class Administrator(models.Model):
username = models.CharField(max_length=32)
password = models.CharField(max_length=32) class EnvironmentalData(models.Model):
device_id = models.CharField(max_length=32)
name = models.CharField(max_length=32)
device_type = models.CharField(max_length=32)
transfer_type = models.CharField(max_length=32)
device_value = models.CharField(max_length=32)
timestamp = models.CharField(max_length=32)
控制台语句生成数据表:
python manage.py makemigrations python manage.py migrate
url.py 文件 添加路由:
from django.contrib import admin
from django.urls import path
from mAgriculture import views urlpatterns = [
path('admin/', admin.site.urls),
path('login.html', views.login),
path('index.html', views.index),
]
view.py 文件:
from django.shortcuts import render, HttpResponse, redirect
from mAgriculture import models # Create your views here. def login(request):
# 登录
if request.method == 'POST':
# 如果是post请求 获取用户名和密码
name = request.POST.get('uid')
pwd = request.POST.get('pwd')
# 去数据库比对
c = models.Administrator.objects.filter(username=name, password=pwd)
if c:
# 如果有,重定向到主页
rep = redirect('/index.html')
# 登陆成功 创建 cookie 存储用户名
rep.set_cookie('username', name)
# 返回
return rep
else:
# 如果没有注册 返回登录界面
return render(request, 'login.html', {'text': '用户名或密码错误!'})
# 如果不是post请求 返回登录界面
return render(request, 'login.html') def index(request):
# 主页
# 获取cookie中存储的用户名
name = request.COOKIES.get('username')
# 如果有
if name:
# 返回主页面
return render(request,'index.html')
else:
# 如果没有登陆成功直接进主页,重定向,先登录去!
return redirect('/login.html')
python Django编写登录项目的更多相关文章
- python Django编写接口并用Jmeter测试
一.环境准备 python3.6.7 Pycharm 二.创建项目 我这里是在Django项目中新建了个APP,目录结构如下图所示: 那么怎么在已有的Django项目中新建APP并进行配置呢: 2.1 ...
- 关于python怎样编写登录接口
把今天的成果展示下,关于怎么用python编写登录接口, 要求是 1.输入用户名和密码 2.输错三次密码就锁定用户 3.认证成功后输出欢迎信息 账号文件内容如下: sanjiang sanjian ...
- 最新JetBrainsPyCharm自动部署Python(Django,tornado等)项目至远程服务器
每次开发Python项目时,对于所有Python开发人员来说,最枯燥的不是修改代码,而是实时将自己的代码上传至远程服务器,进行测试或者部署,本人最初开发也是这样,通过使用Xshell 5,WinSCP ...
- Python Django 编写一个简易的后台管理工具3-运行项目
编写view页面 def hello(request): return render(request,'hello.html') 编写html页面 <!DOCTYPE html> < ...
- Python Django 编写一个简易的后台管理工具2-创建项目
django-admin 创建项目 pycharm 创建项目
- Python之编写登录接口
作业:编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 帐号文件account.txt内容如下: liuyueming 123zhangsan 123lisi 123 锁文件acc ...
- Python Django 之 登录页面
一.创建project与app 1.创建project与app django-admin startproject mysite_login python manage.py startapp log ...
- Python Django 编写一个简易的后台管理工具1-安装环境
安装python环境 MAC 一般都会自带 Python2.x版本 的环境,你也可以在链接 https://www.python.org/downloads/mac-osx/ 上下载最新版安装. 安装 ...
- Python Django 编写一个简易的后台管理工具4-添加admin模版
导入admin后台模版 可以在网上任意搜索模版,我这里也提供一个地址github 拷贝admin后台的html文件至项目的templates文件夹 创建static文件夹,将admin后台的js,im ...
随机推荐
- 洛谷P2463 Sandy的卡片【后缀数组】【二分】
题目描述 Sandy和Sue的热衷于收集干脆面中的卡片. 然而,Sue收集卡片是因为卡片上漂亮的人物形象,而Sandy则是为了积攒卡片兑换超炫的人物模型. 每一张卡片都由一些数字进行标记,第i张卡片的 ...
- Elasticsearch 基础理论 & 配置调优
一.简介 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java开发的,并作为 ...
- are not called implicitly
php.net <?php class BaseClass{ function __construct() { print "In BaseClass constructor<b ...
- 20144306《网络对抗》MAL_免杀原理与实践
一.基础问题回答 1.杀软是如何检测出恶意代码的? (1)特征码:类似于人的生物特征,恶意代码可能会包含一段或多端数据能代表其特征.杀软一般会对文件内容进行静态扫描,将文件内容与特征库进行匹配,来检测 ...
- jquery报错:“ReferenceError: jQuery is not defined”
这明显是没有引到jquery,原因就是jquery没有放在最前面,jquery应该最先引入.
- 浅谈CSRF攻击方式(转)
add by zhj: 在看Django开发的应用时,看到了CSRF,然后搜到了这篇文章,讲的不错.其实CSRF 攻击也蛮简单的.当你登陆网站A后,会在本地存有cookie,在cookie没有过期的情 ...
- CentOS配置JDK环境
1 .下载JDK,jdk1.7.0_80.gz 2. mkdir -p /usr/lib/java 3.sudo chmod -R 777 /usr/lib/java 4.tar -zxvf jdk1 ...
- extjs中的store
1.store中重要的属性和方法 属性:data.proxy.reader.url.root .... 方法:load 2.理解:data--原料,proxy--运输车,reader--加工厂,sto ...
- literallycanvas的简介
LiterallyCanvas是什么 Literally Canvas是一个可扩展的开源(BSD许可)HTML5绘图组件,可以用于网页中插入画图板,类似于windows自带的画图板.可以用可视化工具绘 ...
- Java-idea-设置类头注释和方法注释
一.文件级别的注释 主要是通过File-->Setting-->Editor→File and Code Template中来设置 可以再右侧include中设置File ...