我有一个Django项目,工作正常,但不显示默认主页。
我知道,您必须添加一个url模式来显示,但是--这不是我想要的。
通常,如果您创建Django项目,Django将为您提供类似于此的默认网页。

您可以通过在'project.urls‘中添加'/’的url模式来更改它,如下所示:
urlpatterns = [
...
url(r'^$', wellcomeView, name='wellcomeView'),
...
]但通常,Django必须显示此默认主页,而不更改url模式或设置中的任何内容。
这就是我的问题:我没有在设置或urls中改变任何东西,但是在迁移之后,它停止显示默认页面。什么东西能导致这一切?
这是我的场景:
1-我创建了Django 2.2.7项目(一切正常)
2箱的应用程序,模型。但现在可以看到
3-迁移,创建数据库,测试模型。仍然没有任何视图,但显示默认主页。
4-一次又一次地改变模型,每次迁移。(但仍然没有视图,也没有更改设置或urls,只在默认的管理页面中查找。还会显示默认主页。)
5-更改模型并迁移它们,而不改变设置或urls中的任何内容。不过,一切都还好。
6-迁移之后,Django突然停止服务默认主页。并抛出404错误:

7- 为什么?我知道,这不是问题,我将创建一个视图,并为使用这个视图的'/‘添加一个url模式,所以不会有问题。但是,--我只想知道为什么Django停下来为这个服务?
我搜索了一下,但对这种行为找不到任何好的解释。所以只要求学习‘为什么’,否则我就知道如何在'/‘地址显示视图。
发布于 2020-02-27 03:29:09
您将在控制此行为的源代码逻辑中找到解释:
if (not tried or ( # empty URLconf
request.path == '/' and
len(tried) == 1 and # default URLconf
len(tried[0]) == 1 and
getattr(tried[0][0], 'app_name', '') == getattr(tried[0][0], 'namespace', '') == 'admin'
)):
return default_urlconf(request)具体来说,只有在以下情况下才加载“安装成功”视图:
/);/admin/条目。在您的示例中,您向URL ( evrak/规则)添加了一些内容,因此不满足这些条件。
https://stackoverflow.com/questions/60425735
复制相似问题