如何创建数据库表,Python Django

时间:2015-05-23 14:08:08

标签: python django

我学习Django。现在我尝试制作新的数据库表。 我已经完成了文件的结构,就像我在书中学到的那样。我的应用程序被命名为“书籍”:

Structure of the files

然后,我必须在settings.py中将“mysite.books”行添加到字段INSTALLED_APPS中,不是吗? 另外,在书中写的,我必须注释掉“settings.py”文件中的下一行:

 MIDDLEWARE_CLASSES = (
 # ‘django.middleware.common.CommonMiddleware’,
 # ‘django.contrib.sessions.middleware.SessionMiddleware’,
 # ‘django.contrib.auth.middleware.AuthenticationMiddleware’,
)
INSTALLED_APPS = (
 # ‘django.contrib.auth’,
 # ‘django.contrib.contenttypes’,
 # ‘django.contrib.sessions’,
 # ‘django.contrib.sites’,
 ‘mysite.books’,
)

但是,关于Django的书是针对Django的1.1版本,我使用的是1.8版本的Django。所以,我有另外一些字段“MIDDLEWARE_CLASSES”和“INSTALLED_APPS”:

INSTALLED_APPS = (
    #'django.contrib.admin',
    #'django.contrib.auth',
    #'django.contrib.contenttypes',
    #'django.contrib.sessions',
    #'django.contrib.messages',
    #'django.contrib.staticfiles',
    'mysite.books',
)

MIDDLEWARE_CLASSES = (
    #'django.contrib.sessions.middleware.SessionMiddleware',
    #'django.middleware.common.CommonMiddleware',
    #'django.middleware.csrf.CsrfViewMiddleware',
    #'django.contrib.auth.middleware.AuthenticationMiddleware',
    #'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
    #'django.contrib.messages.middleware.MessageMiddleware',
    #'django.middleware.clickjacking.XFrameOptionsMiddleware',
    #'django.middleware.security.SecurityMiddleware',
)

而且,如果我运行命令“python manage.py validate”,我会看到错误:“ImportError:没有名为'mysite.books'的模块”

我做错了什么?或者,也许是不同版本的Django的问题?我必须做什么?

2 个答案:

答案 0 :(得分:2)

尝试将books设为前缀mysite

答案 1 :(得分:2)

默认的Django项目布局changed in Django 1.4

对于您显示的目录布局,您应在books中使用mysite.books代替INSTALLED_APPS