【发布时间】:2017-05-08 02:04:49
【问题描述】:
简要说明我正在尝试通过单击“rates.html”网页上的徽标(存在于费率应用程序中),我尝试实现此目的的方式如下。
我在这里查看了其他类似的问题,他们似乎都忘记在代码的 appname\urls.py 部分指定命名空间部分。我觉得我已经正确地将 app_name = '[namespace]' 指定到 urls.py 中。
它显示的特定于我的问题的确切错误是:
找不到带有参数“()”和关键字参数“{}”的“home”。尝试了 0 个模式:[]
错误突出显示“rate.html”上的一行 html 代码:
<div id="logoholder">
<a href="**{% url 'getrate:home' %}**"><img src="{%static
'home/images/transparentWatermark.png' %}" width="40" height="40"
style="margin:5px 10px"></a>
</div>
getrate\urls.py:
from django.conf.urls import url, include
from . import views
app_name = 'getrate'
urlpatterns = [
url(r'^$', views.ViewRate, name='rate'),
url(r'^home/', include('home.urls', namespace='home')),
]
主页\urls.py
from django.conf.urls import url, include
from . import views
app_name = 'home'
urlpatterns = [
url(r'^$', views.ViewHome, name='home'),
]
我的网站\urls.py
from django.conf.urls import url, include
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^home/', include('home.urls', namespace='home')),
url(r'^getrate/', include('getrate.urls', namespace='getrate')),
]
我对此的理解一定是错误的,rate.html 有一个公司徽标,我可以点击它通过 {% url 'getrate:home' %} 触发 getrate\urls.py。 getrate\urls.py 代码中包含 home\urls.py。这部分被触发,因为它在该代码行上有命名空间主页。现在它查看 home\urls.py 并最终结束它的正则表达式匹配。让我知道我错了。
感谢您的宝贵时间。
【问题讨论】:
标签: python django django-urls