【发布时间】:2015-01-18 19:48:04
【问题描述】:
我有一个自定义的 BaseUserManager 和 AbstractBaseUser。我想为我的superuser 代码重用AbstractBaseUser 中的create_user 函数,因为要求是相同的。
据我了解,我可以将传递给create_superuser 的参数直接传递给create_user,然后将其本地保存在函数中,将is_admin 更改为True,然后返回它。这将回收大量代码并保持清洁。这是一个合适的方法吗?
def create_superuser(self, email, var2, var3, var4, etc...):
user = create_user(email, var2, var3, var4, etc...)
user.is_admin = True
user.save(using=self._db)
return user
我主要想知道在同一用户上调用user.save(using=self._db) 两次,一次在create_user 和一次在create_superuser 上是否安全?
【问题讨论】:
-
已经有一个
create_superuser给你 - docs.djangoproject.com/en/1.7/ref/contrib/auth/… 为什么要重新创建它? -
我试图将其排除在
BaseUserManager之外,但他们希望我将其实施到我的客户经理中...
标签: python django python-2.7 django-1.7