【问题标题】:Django reporting 404 error on simple view?Django在简单视图上报告404错误?
【发布时间】:2016-02-28 18:30:54
【问题描述】:

我刚刚开始使用 Python 和 Django。

我已经创建了我的模块、迁移了我的模块、将我的模块添加到了管理部分等等。现在,我需要创建我的第一个视图。我一直在关注this guide(是的,我使用的机器正在运行 1.6)

我在应用程序(设置)中的 views.py 文件看起来像这样......

from django.shortcuts import render
from django.http import HttpResponse

def index(request):
    return HttpResponse("Setup Index")

我的 app'a urls.py 看起来像这样...

from django.conf.urls import patterns, url
from setup import views

urlpatterns = patterns('',
    url(r'^$', views.index, name='index')
)

我的根 urls.py 看起来像这样......

from django.views.generic import TemplateView
from django.views.generic.base import RedirectView
from django.conf.urls import include, patterns, url
from django.contrib import admin as djangoAdmin
from admin.controller import ReportWizard
from admin.forms import reportDetailsForm, reportDataViewsForm
from setup import views
djangoAdmin.autodiscover()


urlpatterns = patterns('',
    url(r'^django-admin/', include(djangoAdmin.site.urls)),
    #New User Wizard URL
    url(r'^setup/', include('setup.urls')),
)

据我所知,我已按照信中的指南进行操作,但在导航到 myIP/setup 时收到 404 错误。

404 页面上没有错误消息。有什么问题?

【问题讨论】:

  • 管理员工作吗?
  • 管理员工作完美。
  • 404 页面是什么样的?它是标准的黄色 Django 错误页面吗?
  • 是的。它是标准的 Django 404 页面。
  • /setup/setup/ 不是同一个网址

标签: python django url view


【解决方案1】:

由于某种原因,您的设置似乎覆盖了 APPEND_SLASHMIDDLEWARE_CLASSES 的默认设置。

打开http://example.com/setup 应该会导致重定向到http://example.com/setup/,但不知何故它不适合你。

请注意,后一个 URL 与您的 urls.py 匹配,而前一个则不匹配(应该如此)。

如果 'CommonMiddleWareis enabled andAPPEND_SLASHis set toTrue`,上述应该可以工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-28
    • 1970-01-01
    • 1970-01-01
    • 2011-01-05
    • 2013-08-04
    • 2012-09-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多