有人有一个指南、mb或教程,介绍如何通过代码进行即时邮箱验证,例如我想注册用户,并在他在注册中键入邮箱用户名和密码后,表单向他发送邮箱代码,而不是链接和判断代码,如果代码一切正常,则创建用户

我也在寻找用DRF做同样的事情的方法

推荐答案

在Django中添加带有邮箱代码验证的用户注册的最低要求可以是:

  • User型号上,添加两个字段:

    • 用于验证码(例如email_code: str)
    • 对于用户的第一次登录(默认为真)(例如is_first_login: str = True)
  • 在用户注册表单/视图上

    • 生成随机验证码(根据您的口味)
    • 将签名的用户及其验证码保存在email_code字段中
    • 将随机代码作为变量传递给邮箱模板
    • 发送邮箱
  • 在用户登录表单/视图上

    • (Django version)
      • 阅读登录页面上的用户邮箱和密码
      • Verify if the user's email exists in the database and if is_first_login==True.
        • If True :
          • 将用户重定向到邮箱验证代码页
          • 从模板表单中读取代码
          • Verify the code with the user email against the database
            • If True:
              • 将用户模型字段is_first_login更新为False
              • 让用户登录.
        • 否则为False:
          • 返回有关错误代码的警告或错误消息.

Django相关问答推荐

在保存新实例之前删除一个实例(Django模型保存方法)

如果密码在Django中未被散列,则对其进行散列

如何在uwsgi中创建单个日志(log)文件?

Django-表单(ModelForm)中的数据不保存在现有数据库中

Django Form标签和action属性

DjangoRestFramework 解析错误:"多部分表单解析错误多部分中的无效边界:None"

Django通用列表视图与多查询搜索

有没有办法在Django中按需/点击仅获取和序列化一部分数据以提高性能?

Docker 中的 Django检测到更改...,正在重新加载错误

如何在Django中制作一个不 Select 以前日期的日期 Select 器

Django中的多对多关系?

在用例图中建模前端和后端

如何将表单中的用户字段设置为当前登录的用户?

Django 表单有 Select 但也有自由文本选项?

如何从 django 模板生成静态 html 文件?

如何动态检索 Django 模型类?

Django:从视图中添加 non_field_error?

Django模板转义

Python Django:您正在使用 staticfiles 应用程序而没有设置 STATIC_ROOT 设置

模型表格Save保存,Get获取保存的对象