NoReverseMatch 与 Django 网址
Posted
技术标签:
【中文标题】NoReverseMatch 与 Django 网址【英文标题】:NoReverseMatch with Django urls 【发布时间】:2018-09-23 22:14:09 【问题描述】:我有一个带有异常值的"NoReverseMatch at ∕ "
接收:
Reverse for 'listEvents' with keyword arguments ''values': ''' not found. 1 pattern(s) tried: ['events/events\\/(?P<values>[^/]+)\\/$']
奇怪的是我不认识这部分:events/events\\/(?P<values>[^/]+)\\/$
我的 JS 代码:
var categories ="% url 'events:listEvents' values=string %";
string
是一个 SQL 查询。
这是我的网址
path('events/<str:values>/', views.showRequestedEvents, name='listEvents')
这是我的观点
def showRequestedEvents(request, values):
events = serialize('geojson', Event.objects.raw(values))
return HttpResponse(events, content_type='json')
我知道这是非常基本的,我看到类似的问题被问了很多,但是即使搜索了大约 2 小时我也没有弄明白,所以帮助!
请...
【问题讨论】:
'values': ''
告诉您 values
未在模板上下文中设置。 ``NoReverseMatch at /` 告诉你这是导致问题的/
的索引视图。
为了进一步帮助您,我们可能需要查看您的 urls.py
和错误的完整堆栈跟踪,以及您尝试访问的 URL
这不是你的观点。相关视图必须呈现该标记所在的模板。
【参考方案1】:
我把它“修复”了。看起来 python 或 django 不喜欢 javascript 变量,所以我不能直接把它放到 url 中,但必须像这样使用替换:
var categories ="% url 'events:listEvents' 12345 %".replace(/12345/,string);
【讨论】:
以上是关于NoReverseMatch 与 Django 网址的主要内容,如果未能解决你的问题,请参考以下文章
为啥 Django 模板模式匹配错误的视图并导致 NoReverseMatch 错误?