Django:两个用户名相同的用户

时间:2010-02-20 22:58:46

标签: django django-authentication

如何扩展Auth以允许具有相同用户名的多个用户。在SAAS中,这是一个需要,因为两个帐户可能有一个名为“所有者”的用户或类似的东西。

3 个答案:

答案 0 :(得分:4)

您可以为用户模型创建子类,为新模型创建write a custom authentication backend

但首先我会问自己“我真的需要这个吗?”。拥有相同用户名的多个用户听起来像是一团糟。

答案 1 :(得分:3)

“用户名”的问题在于,在人口规模较大的网站上,Spencer's Lament(Henry Spencer @ U Toronto,动物学系)开始发挥作用:所有好的都被采用。 (他指的是DNS之前的主机名称,但它仍然适用。)唯一保证唯一的“名称”是...电子邮件地址。如果您使用 作为Django的登录标识符,那么您可以允许user.username非唯一并用作屏幕名称。您仍然必须允许人们更改其电子邮件地址,但它们在网站的所有用户中仍然应该是唯一的。

我们必须为一个历史悠久的网站执行此操作,mentioned in this thread.

答案 2 :(得分:1)

你做不到。请改为使用帐户名称添加用户名。