首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NoReverseMatch在......在django

NoReverseMatch在......在django
EN

Stack Overflow用户
提问于 2020-02-17 18:54:49
回答 2查看 85关注 0票数 0

我在一个博客网站上工作,在那里你可以使用关键字(基本上是一个普通的搜索栏)搜索帖子。

我已经从django.db.models导入了Q

我创建的视图:

代码语言:javascript
复制
def search(request):
    queryset = Article.objects.all()
    query =  request.GET.get('q')
    if query:
        queryset = queryset.filter(
            Q(title__icontains=query) |
            Q(overview__icontains=query)
        ).distinct()

    context = {
        'queryset': queryset,
    }
    return render(request, 'search_results.html', context)

urlpattern:

代码语言:javascript
复制
path('search/', search, name='search-results'),

表单本身:

代码语言:javascript
复制
<form action="{% url 'search' %}" class="search-form">{% csrf_token %}
              <button type="submit" class="submit"><i class="icon-search"></i></button>
                <div class="form-group">
                  <span class="icon icon-search"></span>
                  <input type="text" class="form-control" name="q" placeholder="Type a keyword and hit enter">
                </div>
              </form>

当我想访问我放入此表单的页面时,它会显示: Reverse for 'search‘not found。“‘search”不是有效的视图函数或模式名称。

下面还显示了以下内容:

代码语言:javascript
复制
1   <!DOCTYPE html>
2   <html lang="en">
3   
4   {% include 'head.html' %}
5   
6   <body>
7       
8       {% include 'header.html' %}
9   
10      {% block content %}

我尝试添加/删除csrf_token和submit按钮,但结果总是相同的。请帮帮我!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-02-17 19:06:58

我假设表单是head.html的一部分。您不需要csrf_token,因为它不是post表单。

urlpatterns中,将url条目更改为:

代码语言:javascript
复制
path('search/', views.search, name='search'),

在模板中,action="{% url 'search' %}"指的是url的名称...您还可以将role='search'属性添加到表单。希望能有所帮助

票数 4
EN

Stack Overflow用户

发布于 2020-02-17 19:08:34

当您使用{% url '' %}标记时,它会尝试根据url名称查找url。您必须在其中使用url名称。请使用{% url 'search-results' %}更改{% url 'search' %}

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60260931

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档