在使用Django授权LDAP后端时允许更大的字段大小和截断

我使用django_auth_ldap.backend.LDAPBackend根据LDAP目录对用户进行身份验证,并从LDAP(cn,sn,email等)复制一些属性。 但是,某些LDAP字段的值比django.auth.models.User模型支持的值大。

我如何指示Django为用户模型使用更大的max_length值?

<<更新>>

我已经找到了解决方案。 在执行第一个syncdb之前,我在我的应用程序的models.py中放入以下行:

黑客django.contrib.auth.User

User._meta.get_field_by_name('username')[0] .max_length = 128 User._meta.get_field_by_name('first_name')[0] .max_length = 128 User._meta.get_field_by_name('last_name')[0] .max_length = 128 User._meta.get_field_by_name('email')[0] .max_length = 128


您可以对用户模型进行子类化并修改您希望扩展的字段,不幸的是,它看起来像用户模型在django_auth_ldap中进行了硬编码,因此您需要分叉django_auth_ldap以使用您的自定义用户模型。

链接地址: http://www.djcxy.com/p/33741.html

上一篇: Allow for larger field sizes and truncation when using Django auth LDAP backend

下一篇: Can I use HTTP Basic Authentication with Django?