python - Django CRM 需要管理员使用电子邮件地址邀请代理
问题描述
我有一个未完成的 django CRM。我有两种类型的用户:
代理:可以发布和查看数据。
管理员:可以查看和编辑数据。
问题是我需要每个管理员邀请用户加入 CRM。
我需要它按以下方式工作:
管理员将可以访问一个表格,他们可以在其中写下代理人的姓名和电子邮件,一旦他们提交表格,就会向代理人发送一封电子邮件。
代理将收到一封电子邮件,其中包含另一种形式来设置他们的用户名和密码,以便他们可以登录
你知道我应该寻找什么或我该怎么做吗?
解决方案
每次管理员添加新用户时生成激活密钥。将该密钥包含在您发送给代理以激活其帐户的 URL 中。当代理单击带有激活密钥的 URL 时,验证密钥。如果验证成功,允许他们设置他们的用户名和密码,其他重定向他们一个错误页面。
您可以尝试以下生成激活密钥
salt = hashlib.sha1(str(random.random())).hexdigest()[:5]
usernamesalt = agentEmail
if isinstance(usernamesalt, unicode):
usernamesalt = usernamesalt.encode('utf8')
activation_key = hashlib.sha1(salt+usernamesalt).hexdigest()
推荐阅读
- android - 如何在mpandroidchart上设置自定义值axisLeft
- ios - UITest 在框架中不起作用
- android - 设置时间表布局
- javascript - 我被复选框属性卡住了
- python - 使用 csv 文件中的批量数据创建资源的 POST 请求
- javascript - 在一个范围内“交换”值
- html - 我的 Indexeddb 只创建对象存储名称,但不显示我添加的数据;我怎样才能解决这个问题?
- angularjs - 在angularjs中绑定href和click事件
- java - 将数据保存到数组更有效的代码
- python - 将自定义排序功能推广到多列(升序/降序)