如何处理Django中的订阅确认链接?

2024-03-28 12:05:38 发布

您现在位置:Python中文网/ 问答频道 /正文

在我的应用程序中,当人们注册时,他们只需输入电子邮件地址。 在Django中创建一个用户,并且“is\ u confirmed”字段设置为False。你知道吗

在这之后,我想给新用户发一封电子邮件,上面有一个点击链接。 这个链接应该允许这个新用户输入补充信息,并在最终注册之前选择一个密码。你知道吗

问题是:

  • 如何在Django中生成这些链接?(我想这些链接应该是唯一的,并且是安全的,这样就没有人能“猜”到URL了)
  • 在哪里触发邮件发送?(信号?save()用户方法?其他?)你知道吗

谢谢!你知道吗


Tags: django用户信息false应用程序url密码信号
1条回答
网友
1楼 · 发布于 2024-03-28 12:05:38

django-invitation这样的例子来说明如何经常这样做。它们描述了我认为您需要的标准生成密钥/发送电子邮件/访问唯一URL方案。他们确实使用模型上的post save钩子来发送您提到的电子邮件。你知道吗

至于生成密钥,请参见models.py文件,在该文件中,它们执行以下操作:

salt = sha_constructor(str(random.random())).hexdigest()[:5]
key = sha_constructor("%s%s%s" % (datetime.datetime.now(), salt, user.username)).hexdigest()

希望有帮助!你知道吗

相关问题 更多 >