位置: 编程技术 - 正文
推荐整理分享在Django中进行用户注册和邮箱验证的方法(django使用celery),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:django使用celery,django实例教程,在django中创建项目,django用法,django如何运行,django如何运行,django使用,在django中创建项目,内容如对您有帮助,希望把文章链接给更多的朋友!
本文主要介绍我在利用Django写文章时,采用的注册方法。首先说一下整体逻辑思路:
处理用户注册数据,
产生token,生成验证URL,
发送验证邮件,
用户登录网址,进行验证,
验证处理。
具体步骤:
1、添加用户
在Django中自带的User表中,有一个is_active字段,默认值是True,即用户填完表单提交之后,就可以进行登录。我们这里首先将is_acitve字段设为False,也就是说,必须经过后续的邮箱验证,才能够正常登录。
部分代码:
提交后,数据库中会增加一条记录,但is_acitve字段为False,此时还不是有效用户。
2、邮件验证
邮件验证主要有两步,一是产证token,即加密,二是处理验证链接。
1)产生token
之前我采用的是简单的base加解密方法, 但终究是太简单了,后来看到关于Flask的验证用户的文章( Token():
security_key就是settings.py中设置的SECRET_KEY,salt是经过base加密的SECRET_KEY, generate_validate_token函数通过URLSafeTimedSerializer在用户注册时生成一个令牌。用户名在令牌中被编了码。生成令牌之后,会将带有token的验证链接发送到注册邮箱。在confirm_validate_token函数中,只要令牌没过期,那它就会返回一个用户名,过期时间为秒。
发送邮件函数代码:
2)处理邮件验证
就是对应验证链接的视图函数,该函数的主要目的是将User表中用户的is_active字段更新为True。
这里要说一下url的设置。经过itsdangerous产生的token是随机且规律的,说它规律是因为它是由三部分组成,并由点号隔开。类似这样:Imhibm4i.Cg-UAQ.n7ZI2N9kUZ1eOcfBtxlMOdOYYE0。说它随机是因为每一部分的内容可能不仅仅含有字母数字,可能还含有连接符-,_。因此url应该是:url(r'^account/activate/(P<token>w+.[-_w]*w+.[-_w]*w+)/$','blog.views.active_user',name='active_user')
经过上述操作后,用户就可以利用刚注册的用户名进行登录了。
贴出完整代码:
def Register(request):
以上所述是小编给大家介绍的在Django中进行用户注册和邮箱验证的方法,希望对大家有所帮助!
Python3使用requests登录人人影视网站的方法 早就听说requests的库的强大,只是还没有接触,今天接触了一下,发现以前使用urllib,urllib2等方法真是太搓了……这里写些简单的使用初步作为一个记
Python3控制路由器——使用requests重启极路由.py 通过本文给大家介绍Python3控制路由器——使用requests重启极路由.py的相关知识,代码写了相应的注释,以后再写成可以方便调用的模块。用fiddler抓包可
Python3使用requests发闪存的方法 requests是一个python轻量的http客户端库,相比python的标准库要优雅很多。接下来通过本文给大家介绍Python3使用requests发闪存的方法,一起学习吧。使用以
标签: django使用celery
本文链接地址:https://www.jiuchutong.com/biancheng/386159.html 转载请保留说明!友情链接: 武汉网站建设