Страница Django 2.0 не найдена, шаблоны URL не совпадают - PullRequest
0 голосов
/ 29 июня 2018

Я только что обновил свой проект django с версии 1.8.5 до 2.0.6. Я могу зайти на страницу индекса, но любая другая ссылка дает мне страницу 404. введите описание изображения здесь . Какие проблемы? Большое спасибо заранее.

Вот часть моего urls.py

from django.conf.urls import *
from django.contrib import admin
from django.contrib.admin.views.decorators import staff_member_required
from . import views


urlpatterns = [
  url(r'^admin/', admin.site.urls),
  url(r'^historicalbackground/', views.historicalbackground, name="historicalbackground"),
 url(r'^organizations/$', views.organizations, name="Organizations page"),      
]

А вот и views.py

from django.views.generic.base import TemplateView
from django.http import HttpResponse, Http404, HttpResponseRedirect
from django.template import RequestContext, loader, Context
from django.template.loader import get_template
from django.shortcuts import render, render_to_response, redirect
from django.core import management, serializers
from .models import Person, Place, Org, Relationship, Page, Manuscript, PendingTranscription
from html.parser import HTMLParser
from tempfile import *
from .forms import ContactForm, ImportXMLForm, TranscribeForm
from django.core.mail import EmailMessage, send_mail
from django.views.generic import ListView, DetailView
from django.urls import reverse


def historicalbackground (request):
    return render(request, 'historicalbackground.html')

def organizations(request):
    return render(request, 'organizations.html')

1 Ответ

0 голосов
/ 29 июня 2018

Возможно, вы не изменили MIDDLEWARE_CLASSES на MIDDLEWARE, поэтому перенаправление с /historicalbackground на /historicalbackground/ не работает. См. этот ответ для получения дополнительной информации.

Переход с Django 1.8.x на 2.0.x слишком большой прыжок. Вы пропускаете все предупреждения об устаревании, поэтому вы получаете странное поведение, подобное этому. Заставьте ваш проект работать на Django 1.11.x без предупреждений об устаревании, тогда обновление до Django 2.0 будет намного более плавным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...