Django - 身份验证,注册电子邮件确认

时间:2011-06-27 03:40:17

标签: python django authentication django-registration

我正在查看用于身份验证的API

https://docs.djangoproject.com/en/1.3/topics/auth/

我似乎无法找到有关简单用户注册表格的信息,因为这是发送确认电子邮件,因为这是网站上常用的方法。

我想我可以这样做:

1)显示表格 2)用户输入信息并提交 3)使用确认码将用户保存为非活动状态 4)发送带有确认码的链接 5)用户单击确认链接并激活

这似乎并不困难,但我觉得这可能已经完成,而且还有很多边缘案例需要考虑。

3 个答案:

答案 0 :(得分:26)

它没有内置于Django中。有一个名为django-allauth的可重用应用程序,可满足您的需求。

以前推荐使用名为django-registration的应用,但现在这种应用尚未维护且已过时。

编辑注释:自2016年12月起,django-registration并未维持。

答案 1 :(得分:8)

虽然django-registration曾经是注册系统,但它是abandoned by the maintainerdoesn't work on Django 1.6 without patching

尝试一下django-allauth - 如果我在看的时候知道它,我会用它。 (事实证明,我首先发现了这个问题并使用了django-registration,浪费了很多时间。)

编辑10/2016:看起来再次维护django-registration。它现在在GitHub上:https://github.com/ubernostrum/django-registration

答案 2 :(得分:0)

你可以这样做:

  • 定义激活用户的功能(即def 激活(请求))
    • 在url.py中配置到该功能的路由(即/ activate /)
  • 创建表单以注册用户
  • 创建post函数以创建用户
    • 当您将用户设置字段'is_active'创建为0时。
    • 在同一个函数中,发送包含内部链接的电子邮件,此链接必须具有目标作为已配置的路径