Я читаю и следую книге «Практические проекты Django: второе издание», и большая часть книги уже устарела до такой степени, что целая глава не будет работать вообще. Сейчас я пытаюсь создать свою первую плоскую страницу, и я получаю ошибку 404.Django flatpages Не работает
Я пытаюсь использовать встроенный в приложение «django.contrib.flatpages» и я уже создал свой первый flatpage через панель администратора:
Вот мой файл urls.py :
from django.conf.urls import patterns, include, url
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
(r'', include('django.contrib.flatpages.urls')) #ADDED THIS LINE FOR FLATPAGES
)
Вот что я сделал, чтобы мой файл settings.py до сих пор:
SITE_ID = 1 # REQUIRED FOR 'django.contrib.flatpages'
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.sites',
'django.contrib.flatpages', # ADDED FOR FLATPAGES
'south',
)
MIDDLEWARE_CLASSES = (
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'django.contrib.flatpages.middleware.FlatpageFallbackMiddleware', #FOR FLATPAGES
)
Так что это все, что я сделал до сих пор, и я ожидаю «TemplateDoesNotExist в/первой странице /» при навигации нравится книга говорит: http://example.com:1006/first-page/
Но вместо этого, я просто получив ошибку 404.
Я делаю это правильно или сделал новую версию Django, чтобы обесценить способ создания flatpages?
Я не уверен, используя книгу, которая была первоначально написана для Django 0.x, а затем обновлена в 2009 году для версии 1.1 - это хорошая идея для изучения Django 1.6 ... – abarnert
На самом деле эти шаги кажутся правильными даже с Django 1.6 : https://docs.djangoproject.com/en/1.6/ref/contrib/flatpages/. Попробуйте шаблоны 'urls', указанные в документации (главным образом, метод« catchall »). –
Я пробовал использовать эту функцию, все еще получая« No FlatPage соответствует заданному запросу ». есть ли способ перечислить доступные URL-адреса для перехода к? Например, если у меня не было домашней страницы, там я отправил сообщение об ошибке с доступными URL-адресами, могу ли я получить распечатанный список flatpages, которые доступны? – user1504605