每当我运行syncdb命令时,我都会得到很多创建的认证表,但我不包括admin或auth软件包。以下是它自己创建的表格:当我执行syncdb时,如何阻止django同步某些表?
Creating table auth_permission
Creating table auth_group_permissions
Creating table auth_group
Creating table auth_user_user_permissions
Creating table auth_user_groups
Creating table auth_user
Creating table auth_message
我不需要这些表格。在我的settings.py文件中,我已经注释了AuthenticationMiddleware,MessageMiddleware和除django.contrib.sessions和我自己的个人应用程序之外的所有应用程序。有没有设置的地方,我错过了,这些表不创建?
这里是我的INSTALLED_APPS
INSTALLED_APPS = (
'deanproxy.globaltags',
'deanproxy.blog',
'deanproxy.auth',
'deanproxy.twitter',
# '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',
)
编辑:我刚刚意识到,所有这些表都没有建立,如果我注释掉我自己的应用程序“deanproxy.auth”。但是,我的认证应用程序不包括任何django认证的东西,它是一个非常非常简单的认证系统(只是电子邮件和密码)。看来Django可能会因它的名字而感到困惑......
如果你在'INSTALLED_APPS'中注释掉'django.contrib.auth',那么这些表就不会被创建。中间件与它无关。你有没有尝试从一个全新的空数据库? –
是的。我完全杀死了数据库并重新开始。不知道交易是什么..我编辑了上面的问题来显示我的INSTALLED_APPS – intargc