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编写登录项目的更多相关文章

  1. python Django编写接口并用Jmeter测试

    一.环境准备 python3.6.7 Pycharm 二.创建项目 我这里是在Django项目中新建了个APP,目录结构如下图所示: 那么怎么在已有的Django项目中新建APP并进行配置呢: 2.1 ...

  2. 关于python怎样编写登录接口

    把今天的成果展示下,关于怎么用python编写登录接口, 要求是   1.输入用户名和密码 2.输错三次密码就锁定用户 3.认证成功后输出欢迎信息 账号文件内容如下: sanjiang sanjian ...

  3. 最新JetBrainsPyCharm自动部署Python(Django,tornado等)项目至远程服务器

    每次开发Python项目时,对于所有Python开发人员来说,最枯燥的不是修改代码,而是实时将自己的代码上传至远程服务器,进行测试或者部署,本人最初开发也是这样,通过使用Xshell 5,WinSCP ...

  4. Python Django 编写一个简易的后台管理工具3-运行项目

    编写view页面 def hello(request): return render(request,'hello.html') 编写html页面 <!DOCTYPE html> < ...

  5. Python Django 编写一个简易的后台管理工具2-创建项目

    django-admin 创建项目 pycharm 创建项目

  6. Python之编写登录接口

    作业:编写登陆接口 输入用户名密码 认证成功后显示欢迎信息 输错三次后锁定 帐号文件account.txt内容如下: liuyueming 123zhangsan 123lisi 123 锁文件acc ...

  7. Python Django 之 登录页面

    一.创建project与app 1.创建project与app django-admin startproject mysite_login python manage.py startapp log ...

  8. Python Django 编写一个简易的后台管理工具1-安装环境

    安装python环境 MAC 一般都会自带 Python2.x版本 的环境,你也可以在链接 https://www.python.org/downloads/mac-osx/ 上下载最新版安装. 安装 ...

  9. Python Django 编写一个简易的后台管理工具4-添加admin模版

    导入admin后台模版 可以在网上任意搜索模版,我这里也提供一个地址github 拷贝admin后台的html文件至项目的templates文件夹 创建static文件夹,将admin后台的js,im ...

随机推荐

  1. MyISAM存储引擎

    每个MyISAM在磁盘上存储成三个文件.第一个文件的名字以表的名字开始,扩展名指出文件类型..frm文件存储表定义.数据文件的扩展名为.MYD (MYData).索引文件的扩展名是.MYI (MYIn ...

  2. 去除Layer自带隐藏动画

    在TableView的HeadView设置的时候(HeadView是刚刚创建和设置的),会出现很多不想看到的动画,此时可以增加代码去除这些动画 [CATransaction begin]; [CATr ...

  3. Ubuntu 14.04 使用速度极快的Genymotion 取代蜗牛速度的原生AVD模拟器

    Ubuntu 14.04 使用速度极快的Genymotion 取代蜗牛速度的原生AVD模拟器 2014-5-29阅读4045 评论0         默认的AVD的速度可谓奇慢无比,一番搜索最后找到了 ...

  4. numpy中np.nan(pandas中NAN)

    转自:http://blog.csdn.net/xiaodongxiexie/article/details/54352889 在处理数据时遇到NAN值的几率还是比较大的,有的时候需要对数据值是否为n ...

  5. mac chrome 驱动配置

    将解压后的chromedriver移动到/usr/local/bin目录下

  6. 非极大值抑制(NMS)

    非极大值抑制顾名思义就是抑制不是极大值的元素,搜索局部的极大值.这个局部代表的是一个邻域,邻域有两个参数可变,一个是邻域的维数,二是邻域的大小.这里不讨论通用的NMS算法,而是用于在目标检测中提取分数 ...

  7. 为什么*p++等于*(p++)?

    你要先搞懂i++与++i的区别.i++是先赋值再自增,对于指针也是一样的.所以*p++是先取值,然后p再自增.加个括号还是一样的,*(p++)括号里面的内容还是p++,所以还是要先取值然后p再自增. ...

  8. [py][mx]django注册-邮件激活

    人生,学习,就是一段旅途, 说是放弃,其实是自信心作祟. 因为不同时间段状态,譬如晚上和早上刚来状态不一样.做相同事情容器失去自信而放弃. 坚持可以打破这个魔咒 还有就是有些问题得分割, 不要让压死牛 ...

  9. Hive学习笔记:基础语法

    Hive基础语法 1.创建表 – 用户表 CREATE [EXTERNAL外部表] TABLE [IF NOT EXISTS 是否存在] HUserInfo ( userid int comment ...

  10. nltk模块基础操作

     几个基础函数 (1)搜索文本:text.concordance(word) 例如,在text1中搜索词”is”在文本中出现的次数以及上下文的词:text1.concordance("is& ...