注意:这个问题是在AbstractUser出现之前提出的,而这可能是您现在想要使用的东西。
基本上,我想从默认的Django用户类中删除默认的电子邮件字段...
class MyUser(User):
field = models.CharField(max_length = 10)
a = 'hello'
def b(self):
print 'world'
del User.email
del MyUser.email
del Myuser.field
所有这些都会导致AttributeError。但是以以下方式删除方法或属性却可以正常工作:
del MyUser.a
del MyUser.b
我很好奇为什么这个不起作用; 这些模型字段是什么类型的?
我尝试的另一件事是通过在MyUser中创建 email = None 来覆盖电子邮件,但那也没有起作用(而且会有点丑陋)。
谢谢您提前!
顺便说一句,如果你想知道为什么; 这更多是出于好奇而不是对应用程序真正必要的... 但我认为在数据库中不要有未使用的列是很好的。
P.S. 我不想更改Django文件以手动删除用户中的'email'。
编辑:如要执行相同操作,请参阅后续问题 Before syncdb, delete field from standard Django model