【问题标题】:NoReverseMatch with Django urlsNoReverseMatch 与 Django 网址
【发布时间】: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&lt;values&gt;[^/]+)\\/$

我的 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
  • 这不是你的观点。相关视图必须呈现该标记所在的模板。

标签: javascript django django-views django-urls


【解决方案1】:

我把它“修复”了。看起来 python 或 django 不喜欢 JavaScript 变量,所以我不能直接把它放到 url 中,但必须像这样使用替换:

var categories ="{% url 'events:listEvents' 12345 %}".replace(/12345/,string);

【讨论】:

    猜你喜欢
    • 2015-04-23
    • 1970-01-01
    • 2014-07-02
    • 1970-01-01
    • 2014-12-14
    • 1970-01-01
    • 2020-08-01
    • 2012-10-24
    • 2015-09-23
    相关资源
    最近更新 更多