使用 Django 1.5,尝试自定义用户功能。
我在项目中只有 3 个模型。他们来了,
class CustomUser(AbstractBaseUser, PermissionsMixin):
class CustomUserManager(BaseUserManager):
class testModel (models.Model):
我这样做时没有错误python manage.py validate
。当我这样做时python manage.py sqlall lancer
(lancer 是应用程序的名称),它显示以下内容,
BEGIN;
CREATE TABLE "lancer_testmodel" (
"id" serial NOT NULL PRIMARY KEY,
"first_name" varchar(30) NOT NULL,
"last_name" varchar(30) NOT NULL
)
;
COMMIT;
其他两个模型的 SQL 代码发生了什么变化?它是否只为显式继承的模型创建表models.Model
?
附加信息,
AUTH_USER_MODEL = 'lancer.CustomUser'
根据 Django 文档,我在 settings.py 文件的末尾添加了- 我在 settings.py 中注释掉了所有其他已安装的应用程序。我知道其中有很多被 使用
contrib.auth
,但是由于我使用的是新的自定义用户模型,所以我只是将其他所有内容都注释掉了。
这是现在的样子
INSTALLED_APPS = (
#'django.contrib.auth',
#'django.contrib.contenttypes',
#'django.contrib.sessions',
#'django.contrib.sites',
#'django.contrib.messages',
#'django.contrib.staticfiles',
# Uncomment the next line to enable the admin:
# 'django.contrib.admin',
# Uncomment the next line to enable admin documentation:
# 'django.contrib.admindocs',
'lancer',
)