URL Conf - 在一个应用程序中的根 URL 和非根 URL 提供视图
URL Conf - Serving views at the root URL and non root URLs within one app
我 运行 在新项目中配置 url.py
文件时遇到问题。我有一个应用程序,其中包含两个视图。第一个视图应出现在 myurl.com,而另一个应出现在 myurl.com/foo
。 myurl.com
显示没有问题,但 myurl.com/foo
显示 404 页面未找到错误。
项目级别的 url.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)),
url(r'^$', include('myapp.urls', namespace="myapp")),
)
应用级别的 url.py
如下所示:
from django.conf.urls import patterns, include, url
from myapp import views
urlpatterns = patterns('',
url(r'^$', views.book_search, name='book_search'),
url(r'^foo/', views.myapp, name='myapp')
)
我知道 django 正在获取提交的 URL 并根据项目级别定义的 url 模式对其进行检查,但我不知道如何将其定向到 myapp
而不是在某些 url 处托管所有 myapp
,即 myapp.com/bar
和 myapp.com/bar/foo
.
url(r'^$', include('myapp.urls', namespace="myapp")),
去掉这里的^$
。这将强制所有包含的 URL 仅在以 "the end" 开头时才匹配,即什么都没有。
我 运行 在新项目中配置 url.py
文件时遇到问题。我有一个应用程序,其中包含两个视图。第一个视图应出现在 myurl.com,而另一个应出现在 myurl.com/foo
。 myurl.com
显示没有问题,但 myurl.com/foo
显示 404 页面未找到错误。
项目级别的 url.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)),
url(r'^$', include('myapp.urls', namespace="myapp")),
)
应用级别的 url.py
如下所示:
from django.conf.urls import patterns, include, url
from myapp import views
urlpatterns = patterns('',
url(r'^$', views.book_search, name='book_search'),
url(r'^foo/', views.myapp, name='myapp')
)
我知道 django 正在获取提交的 URL 并根据项目级别定义的 url 模式对其进行检查,但我不知道如何将其定向到 myapp
而不是在某些 url 处托管所有 myapp
,即 myapp.com/bar
和 myapp.com/bar/foo
.
url(r'^$', include('myapp.urls', namespace="myapp")),
去掉这里的^$
。这将强制所有包含的 URL 仅在以 "the end" 开头时才匹配,即什么都没有。