Django框架首页和登录页分离操作示例
作者:学习笔记666 发布时间:2022-10-06 02:16:42
标签:Django框架,首页,登录页
本文实例讲述了Django框架首页和登录页分离操作。分享给大家供大家参考,具体如下:
1.登录模板login.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>用户登录</title>
</head>
<body>
<form method="post">
<p>用户名:<input type="text" name="username"></p>
<p>密码:<input type="password" name="pwd"></p>
<p><input type="submit" value="提交"></p>
<hr>
</form>
<p> {{ result }}</p>
</body>
</html>
2.URL设置
url(r'^login/', "hello.views.login")
表示浏览器访问login,就指向hello应用下views文件下login方法
3.在login方法下响应login模板和完成登录功能
def login(request):
msg = {'result': ''}
if request.method == 'POST':
getUserName = request.POST.get('username')
getPwd = request.POST.get('pwd')
# 实例化UserLogin类
loginObj = UserLogin(getUserName,getPwd)
if loginObj.isLogin():
myReponse = HttpResponse("<script>self.location='/index'</script>")
myReponse.set_cookie('userlogin_username',getUserName,3600)
return myReponse
else:
msg['result'] = '用户名或密码错误'
myReponse = render_to_response("login.html", msg)
return myReponse
其中我们使用了UserLogin类,并用此类中的方法完成了用户是否已经登录的验证。
UserClass.py:
# coding:utf-8
class UserLogin:
userName = ''
pwd = ''
# 构造方法
def __init__(self,username,pwd):
self.userName = username
self.pwd = pwd
# 登录验证方法
def isLogin(self):
if self.userName == 'jack' and self.pwd == '123':
return True
else:
return False
在views.py中使用之前必须要引入:
from UserClass import UserLogin
表示从UserClass中导入UserLogin。
4.在login方法中,登录成功就跳转到了首页,首页显示登录用户名
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>首页</title>
</head>
<body>
<h2>这是首页,当前登录用户是:{{ username }}</h2>
<p><a href="##" rel="external nofollow" >安装退出</a></p>
</body>
</html>
def hi(request):
msg = {'username':'游客'}
if request.COOKIES.get('userlogin_username') != None :
msg['username'] = request.COOKIES.get('userlogin_username')
myReponse = render_to_response("index.html",msg)
return myReponse
希望本文所述对大家基于Django框架的Python程序设计有所帮助。
来源:https://blog.csdn.net/github_26672553/article/details/52496937
0
投稿
猜你喜欢
- 早就想用一个系列的文章来写AJAX,让自己头到尾理一遍,更好的掌握基础知识(昨天的面试受打击了,基础知识很重要).要是写的好,也许也可以帮助
- 今天的第二个作品,哈哈哈哈,搞起来感觉还挺有意思的,不过代码里纸牌J,Q,K,A几个数字被我替换成了11,12,13,14......主要是
- 冻结的集合前面一节讲述了集合的基本概念,注意,那里所涉及到的集合都是可原处修改的集合。还有一种集合,不能在原处修改。这种集合的创建方法是:&
- 6、遮罩滤镜作用:该滤镜可以为对象建立一个覆盖于表面的膜,其效果就象戴着有色眼镜看物体一样。语法: {filter:mask(color=c
- numpy norm()函数求范数函数:norm(x, ord = None, axis = None, keepdims = False)
- 本文实例为大家分享了Tensorflow实现卷积神经网络的具体代码,供大家参考,具体内容如下1.概述定义:卷积神经网络(Convolutio
- 本篇我们将以分析历史股价为例,介绍怎样从文件中载入数据,以及怎样使用NumPy的基本数学和统计分析函数、学习读写文件的方法,并尝试函数式编程
- python开发中经常遇到报错的情况,但是warning通常并不影响程序的运行,而且有时特别讨厌,下面我们来说下如何忽略warning错误。
- 1)利用eval可以将字典格式的字符串与字典户转》》》mstr = '{"name":"yct&quo
- 本文实例讲述了python飞机大战pygame游戏框架搭建操作。分享给大家供大家参考,具体如下:目标明确主程序职责实现主程序类准备游戏精灵组
- 本文实例讲述了Python使用matplotlib简单绘图。分享给大家供大家参考,具体如下:# -*- coding:utf-8 -*-#!
- 注意:如果您尚未阅读过原来那篇老文章《悟透JavaScript》,请先行阅读该文,以了解上下文关系。在上面的示例中,我们定义了两个语法甘露,
- 1、为图片加入水印功能 Dim Jpeg Set Jpeg = Server.Create
- 我在Web服务器端安装了Web Server IIS4.0、Oracle Net8 for Client,并创建好了和Oracle8数据库的
- 第一种打开PyCharm, 然后PyCharm -> Preferences -> 在搜索框中输入Project Interpr
- 前言什么是树表查询?借助具有特殊性质的树数据结构进行关键字查找。本文所涉及到的特殊结构性质的树包括:二叉排序树。平衡二叉树。使用上述树结构存
- 以图像处理见长的微软Live实验室,最近发布了一款新作:Pivot。装完启动后的第一印象就是一款浏览器,和IE、FF、Chrome又不太一样
- 去空格及特殊符号s.strip().lstrip().rstrip(',')Python strip() 方法用于移除字符串
- 代码之余,将代码过程重要的一些代码段备份一下,如下的代码内容是关于Python从ftp服务器下载文件的的代码,希望能对小伙伴有用途。#cod
- 配置Laravel 的邮件服务可以通过 config/mail.php 配置文件进行配置。邮件中的每一项都在配置文件中有单独的配置项,甚至是