Django urlpatterns/include()加载错误的vi

2024-05-19 17:38:33 发布

您现在位置:Python中文网/ 问答频道 /正文

除了几个数据驱动的应用程序外,该网站还有一个主页。没问题。但是当我试图添加其他非数据驱动的页面(about、mission statement等)时,我遇到了url directors的问题。在

在设置.pyurl模式包括:

url(r'^$', include('home.urls')),
url(r'^mission/$', include('home.urls')),

家/网址.py包括:

^{pr2}$

将浏览器定向到主页将加载索引视图,但将浏览器定向到/mission/也会加载索引视图。在

我意识到我可能在这里遗漏了一些小的(和基本的)东西,但是我已经阅读了100次文档,并且阅读了很多其他人关于urlpatterns的问题,但是我就是不知道到底发生了什么。中的include()语句设置.py似乎不是问题。由于home index视图加载,它显然被定向到home/网址.py,而且这个文件太简单了,我根本看不出问题出在哪里。在

有人能教我一下吗?这样我就可以面对我的下一个Django砖头了吗?我很感激。在


解决了-谢谢你,Sohan Jain

实际问题是在设置URLPATTERNS而不是r“”中使用r'^$'。使用第二个include()语句是为了解决实际问题。在


Tags: 数据py视图应用程序urlhomeinclude网站
1条回答
网友
1楼 · 发布于 2024-05-19 17:38:33

当您include来自另一个目录的url时,它们的路径必须以第一个参数开头。在

所以当你说url(r'^$', include('home.urls'))时,这意味着:对于主页.url,使其路径以^$开头,即无。在

当你说url(r'^mission/$', include('home.urls')),这意味着:对于主页.url,使其路径从“任务”开始。在

顺序和URL匹配。因此导航到/mission/匹配url(r'^mission/$', include('home.urls')),然后{},这将生成索引页。在

以下是您想要的:

settings.py 
url(r'', include('home.urls'))

home/urls.py
url(r'^$', views.index, name='index'),
url(r'^mission/$', views.mission, name='mission'),

相关问题 更多 >