request.GET.get('q',None)总是返回None

时间:2020-02-20 16:22:40

标签: django

# my .views
def search_view(request):
    query = request.GET.get('q', None)
    print(query)
    context = {"query": query}
    return render(request, 'view.html', context)
# .urls
path('search/', search_view)

# my view.html
{% if query %}

        <p>Your query {{ query }}</p>
        {% else %}

        <form method="GET" action='/search/'>
            <input type="search" name='q' placeholder="Search" aria-label="Search">
            <button type="submit">Search</button>
        </form>

        {% endif %}

我是Django的新手,我在关注文档,我一遍又一遍地看对我来说似乎不错,但我一直无法获得query = None。当我在搜索栏中输入值时,将转到http://127.0.0.1:8000/search/?q=value, 但是查询始终为“无”。请帮助菜鸟入门。

2 个答案:

答案 0 :(得分:0)

欢迎来到!您尝试过this吗?通过阅读这些内容,您似乎在将值从表单返回到函数时遇到了一些问题。

答案 1 :(得分:0)

我不知道最后要看什么,但这不是一项好工作。您也尝试过标签吗?