我试图在标签内建立链接,并且当我执行代码中所示的此过程时,它给我错误:
/ p中的TypeError不是映射
它曾经可以正常工作,但后来决定不这样做
模板代码:
<a class="item" href="{% url 'home' %}">
网址代码:
urlpatterns = [
path('admin/', include('admin_llda.urls') ),
path('about/', views.about, name = 'about'),
path('dashboard/',views.dashboard, name = 'dashboard'),
path('',views.homepage, name = 'home')
]
答案 0 :(得分:5)
检查您是否在name
中正确命名了urls
kwarg。
这是一个关键字参数,而不是参数。
答案 1 :(得分:1)
检查所有urls.py
是否正确添加了name
参数。
如果您使用path('',views.a, 'view.a')
而不是path('',views.a, name='view.a')
,则会得到'TypeError at / 'str' object is not a mapping'
。
答案 2 :(得分:0)
请检查admin_llda.urls
中的错误。
您可能会错过在name=''
调用之一中添加path()
。
例如:
您可能已经写过
path('',views.some_method, 'somename')
代替路径
path('',views.some_method, name= 'somename')
答案 3 :(得分:0)
我只是遇到了同样的问题,所以找到了解决方案!检查您的urls.py,以及您是否未能正确命名任何url-不一定
答案 4 :(得分:0)
我遇到了同样的问题,请检查path('',, name =“”)中的“ name”参数
答案 5 :(得分:0)
尝试将名称空间添加到您的网址
例如,将以下内容添加到“ my_app / urls.py”中
app_name='my_app'
然后您的模板应类似于:<a class="item" href="{% url 'my_app:home' %}">
最后请确保在“ my_project / settings.py”中注册您的应用
https://docs.djangoproject.com/en/3.0/topics/http/urls/#naming-url-patterns