Skip to main content
 首页 » 编程设计

python之Django 表单发布未在 request.GET 中获取值

2024年08月25日32cyq1162

我正在尝试使用如下形式将值传递给我的 View ,

我有以下表格:

<form action="{% url 'searchlocation' %}" method="get"> 
    {% csrf_token %} 
    <input type="text" class="form-control" id="search_location" placeholder="Search"> 
    <span class="input-group-btn"> 
        <button type="submit" class="btn btn-danger"><i class="fa fa-search"></i> 
        </button> 
    </span> 
</form> 

在我看来我有:

def SearchLocation(request): 
 
    if request.method == 'GET': 
        keyword = request.GET.get('search_location','') 
        print keyword 
 
    return render_to_response('app/location.html', {'user': request.user}, RequestContext(request)) 

我在这里没有得到关键字的任何值。它只是给了我一个 ''。

当我尝试 request.GET['search_location'] 时,它给了我一个multivaluedict 错误。

请您参考如下方法:

您必须为您的表单输入提供一个名称,以便浏览器发送它,如下所示:

<input type="text" name="search_location" class="form-control" id="search_location" placeholder="Search"> 

请求数据以键/值对的形式发送。如果没有 name 属性,则没有值的键,浏览器也不会发送输入。