我们在很多网站上都可以看到用户注册使用电子邮件激活或启用的方式。也就是说,用户在注册后填写正确的电子邮件地址,接着网站会发送一封启用电子邮件到用户设置的电子邮件的邮箱中,并在邮件中提供一个激活或启用的链接,在用户单击此链接后,账号正式激活或启用。

  这里我们使用 Django 的 django-registration 模块可以快速实现这一过程。

1. django-registration 安装与设置

使用 pip 安装:

pip install django-registration

此模块暂时还不支持 Django2.0 以上版本,建议使用2.0以下版本安装使用。

将 registration 添加到 Django 项目设置 settings.py 中的 INSTALLED_APPS 中去,然后在 settings.py 中设置一个常数,用来指定启用码的天数。

INSTALLED_APPS = ('django.contrib.sites','registration', #should be immediately above 'django.contrib.admin''django.contrib.admin',# ...other installed applications...
)ACCOUNT_ACTIVATION_DAYS = 7 # One-week activation window; you may, of course, use a different value.

运行 python manage.py migrate 以安装默认设置使用的模型。为了使模板正常工作,registration 必须出现在django.contrib.admin上方。

使用标准自定义网址,在 url.py 中添加一行设置:

url(r'^accounts/', include('registration.backends.default.urls')),

任何指定到 /accounts/的网址,都会被送到 registration 检查是否有符合的项。然后用户可以通过 /accounts/register/ 注册, 通过 /accounts/login/ 登录(当用户已注册后)等等。

2.建立 django-registration 所需的模板

  当用户单击“注册”按钮后,django-registration 就会开始调用一连串的模板以及相关文本文件,这些是我们需要自己写的。所有的模板都必须放在 templates 目录下的 registration 文件夹下。

registration_form.html : 显示注册窗体的网页,默认使用 form 变量作为窗体各字段的内容

registration_complete.html : 填写完注册窗体,单击“提交”按钮后显示的信息页面

activation_complete.html : 当账号顺利完成启用时会显示的页面

activate.html : 当账号启用失败时会显示的页面

activation_email.txt : 在发送启用邮件时使用的邮件内容

activation_email_subject.txt : 在发送启用邮件时使用的邮件主题

注意:由于 django-registration 会使用到 电子邮件发送功能,因此应该先设置好 Django 的电子邮件收发功能,可以使用 mailgun 来进行电子邮件收发。

相关设置参考本人博客  https://www.cnblogs.com/weixuqin/p/9263410.html 。

至此,我们便完成了 djano-registration 相关设置,点击注册,填写信息后,便在邮箱中收到网站的验证邮件信息。

Django 实现网站注册用户邮箱验证功能相关推荐

  1. django 注册登录邮箱验证功能

    邮箱注册 一.Python自带的邮箱模块 步骤 1.开启163邮箱服务器 2.写脚本文件 import smtplib # 1.导入邮件模块 from email.mime.text import M ...

  2. mysql查询使用qq邮箱注册_Spring Boot实现qq邮箱验证码注册和登录验证功能

    1.登录注册思路 这是一个使用spring boot做的一个qq邮箱注册和登录的项目. 没写前端页面,使用postman测试.有截图详细. 1.1.思路 注册:通过输入的邮箱发送验证码,检验前端传来的 ...

  3. laravel 项目实现邮箱验证功能

    邮箱验证功能在很多网站都有用到,我的个人网站上也用到,邮箱验证需要用到邮件发送服务,Laravel 提供了非常简单的邮件发送 API,Laravel 项目实现邮件发送功能很简单,下面我开始介绍一下我的 ...

  4. 邮箱验证功能原理 语法 属性

    邮箱验证功能原理 1 [已解决问题] 浏览: 3508次 很多地方都在注册账号的时候使用邮箱验证功能.注册后发送一封邮件到注册邮箱里面.然后点击 邮箱里面的链接 激活邮箱. 还有手机验证 这些的原理是 ...

  5. javamail实现邮箱验证功能

    javamail是基于SMTP协议和POP3协议的邮件发送与接收系统,在用户注册与登陆的过程中,常需要用到邮箱验证功能,下面是基于javamail的一个简单实现 用户注册后通过servlet得到邮箱地 ...

  6. python 邮箱验证_在Django中进行用户注册和邮箱验证的方法

    本文主要介绍我在利用Django写文章时,采用的注册方法.首先说一下整体逻辑思路: •处理用户注册数据, •产生token,生成验证URL, •发送验证邮件, •用户登录网址,进行验证, •验证处理. ...

  7. java 注册页面正则式_Java使用正则表达式对注册页面进行验证功能实现

    本文给大家介绍java使用正则表达式对注册页面进行验证的代码,代码如下所示:package regex; import java.util.Scanner; import java.util.rege ...

  8. Express使用nodemailer完成邮箱验证功能详细流程(含封装,可作自定义模块)

    Express使用nodemailer完成邮箱验证功能详细流程(含封装,可作自定义模块) 记录大创项目中,在express中使用第三方模块nodemailer完成邮箱验证功能,含客户端请求验证邮件和服 ...

  9. phpcmsV9 邮箱注册:邮箱验证(不改代码、含演示截图) - 配置篇

    phpcmsV9 邮箱注册:邮箱验证(不改代码.含演示截图) - 全程指导 方法一.(网传) · 配置教程 第一步:修改登陆的验证JS 第二步: 修改登录文件 方法二.真机实操 · 教程 [推荐] 1 ...

最新文章

  1. 题目1000:计算a+b
  2. C语言中连续调用rand函数,返回值不变
  3. k8s概念入门之kubelet-针对1.1.版本阅读
  4. Python应用与实践【转】
  5. 正整数的中文表示python_使用Python列表理解计算列表中的正整数元素
  6. 学术不端网查重靠谱吗_毕业论文查重把知网上的英文文章翻译成中文可以吗
  7. flutter 页面加载动画_Flutter撸一个加载动画
  8. LinearLayout的一些注意事项
  9. java get和post区别_HTTP请求方式GET和POST区别
  10. Wordpress 提速之 Gzip 压缩
  11. php mysql增修删_PHP mysql PDO增、删、查、改
  12. Java简单记事本设计实验报告_java记事本实验报告
  13. 数字化园区、智慧园区、物业管理、园区设备、房屋资源、维修业务、巡查管理、招商管理、商业租售管理,收支管理,合同管理,人员管理,日常维护,巡检管理,报检报修、物业驾驶舱、axure原型、rp原型
  14. 英伟达赚钱能力创历史新高,老黄:GPU供不应求我也很急
  15. 地图不显示_图灵搜不显示地图,软件打开一片空白,怎么解决?
  16. jq css3实现跑马灯+大转盘
  17. 『SnowFlake』雪花算法的详解及时间回拨解决方案
  18. 人工智能技术对全民生活的影响
  19. Mac自带Safari浏览器如何清除缓存
  20. 华硕主板设置RTC自动开机

热门文章

  1. Scrapy是什么?Scrapy怎么用?Scrapy基础使用(基于scrapy2.0+编写) ๑乛◡乛๑ Scrapy框架使用方法
  2. 列出每一个部门中年纪最大的员工姓名,部门名称【多测师_王sir】
  3. 炒菜机器人放食材的顺序_九阳发布了一堆厨电:要用“进化”颠覆人类的饮食、厨房生活...
  4. Linux SD卡/SDIO驱动开发0-基本知识
  5. 15. R的bnlearn包中的per.node.score函数的学习探究
  6. Android LeakCanary使用详细教程
  7. API理解清晰(转载)
  8. 仙女姐姐@chuu chloe和@什么七七——python图片爬虫
  9. ESPIDF开发ESP32学习笔记【SPI与片外FLASH基础】
  10. 榜单发布!国产智能驾驶域控制器市场竞争力TOP10供应商