我只是跟随4 step directions to set up flatpages,但是当我运行python3 manage.py migrate
时,没有创建平面页面的数据库表。所有其他表都是创建的,而不是flatpages所需的表。我很困惑,因为这并不复杂。我将正确的东西添加到我的settings.py -
SITE_ID = 1 # added for flatpages
# Application definition
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.sites', # added
'django.contrib.flatpages.urls', # added for flatpages
)
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.contrib.flatpages.middleware.FlatpageFallbackMiddleware', #added
)
...并进入我的urls.py(虽然我不认为这会影响数据库表的创建) -
from django.conf.urls import patterns, include, url
from django.views.generic import TemplateView
from django.contrib import admin
urlpatterns = patterns('',
# Examples:
url(r'^$', 'pets.views.home', name='home'),
url(r'^pages/', include('django.contrib.flatpages.urls')),
url(r'^robots\.txt$', TemplateView.as_view(template_name='robots.txt',
content_type='text/plain')),
url(r'^admin/', include(admin.site.urls)),
)
...我有脑屁什么的吗?我不知道为什么这不会起作用,但它只是没有创建flatpages所需的数据库表。这不是我第一次用Django创建一些东西,但这是我第一次尝试使用平面页面。
答案 0 :(得分:0)
是的,可能是大脑放屁:你已经将urls模块添加到INSTALLED_APPS,而不是app本身。
'django.contrib.flatpages', # added for flatpages