2011-12-14 67 views
1

我正在使用基于Django 1.3的用户注册系统,并提供了一些不寻常的验证要求。我正在使用django注册的当前分支作为我的出发点。什么是处理变异手段做同样事情的最Python方式?

当他注册时,我必须向用户发送电子邮件(对吧?)由django注册处理。 用户必须通过单击具有由django注册处理的散列的链接来激活。

到目前为止,琐碎。

现在,当用户激活他的帐户时,我需要将他的电子邮件域与已知域列表进行比较,并根据这些域向他授予组成员身份。

用户还需要能够使用未知的电子邮件域,稍后通过电子邮件域验证,通过学生ID /名称列表或1关闭,或1对所有哈希码进行验证。

所以,我有4种独特的验证,用户应该被允许加入群的方式:

  • 电子邮件域(激活)针对学生编号/名称
  • 检查表
  • 检查针对单个生成的随机哈希和 列表中删除哈希
  • 对证,对多人
工作的散列

显然,对于不同的验证方法以及代码,模型会有所不同。我知道如何用“硬性的方式”对它进行编码,但它闻起来像是想要某种包含通用性的“验证”结构。我在这里寻找一个好的,可扩展的方法,而且我有点迷路。

谢谢。做

回答

3

的一种方式将是:

  • 使用django.contrib.auth.models.Group做出Group为每个域
  • User对象创建注册signal,你根据电子邮件的用户添加到组属性域名
  • 在用户个人资料页面中,允许用户任意加入任意组。
+0

`信号`是正确的词imho – lig 2011-12-14 13:14:20

相关问题