Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从Django中的变量列出会话中使用的所有值_Django_Django Views - Fatal编程技术网

从Django中的变量列出会话中使用的所有值

从Django中的变量列出会话中使用的所有值,django,django-views,Django,Django Views,我做了一个简单的搜索视图来根据这些输入进行查询 def search(request): try: query_x = request.GET.get('query_x') query_y = request.GET.get('query_y') points_returned = request.GET.get('points_returned') distance_condition = request.GET.get(

我做了一个简单的搜索视图来根据这些输入进行查询

def search(request):
    try:
        query_x = request.GET.get('query_x')
        query_y = request.GET.get('query_y')
        points_returned = request.GET.get('points_returned')
        distance_condition = request.GET.get('distance_condition')

        object_list = Points.objects.filter(
            geom_point__distance_lte=('POINT({0} {1})'.format(query_x, query_y), D(km=10))
            ).order_by('geom_point')[:int(points_returned)]

        request.session['query_x'] = query_x

        return render_to_response('search_results.html', {'object_list': object_list})
    except KeyError:
        return render_to_response('home.html')

此搜索将被多次使用(可能具有相同的值),因此我希望保存并列出用户用于执行查询的所有输入(对于查询x和查询y变量)。我已经实现了在模板中获取值,但是当我在模板中放入
{{request.session.query}
以查看结果时,只会显示最后一个输入-我需要获取使用的所有值。

无论在哪里调用搜索函数,都可以在调用搜索之前在那里创建一个会话变量list
request.session['query\u x']=list()

您只需执行
request.session['query\u x']=query\u x
即可。session['query\u x'].append(query\u x)并使用
request.session['query\u x']
访问所有query\u x,谢谢您的回复。我使用您的建议更新了代码,但仍然只得到一个结果(我在query_x中使用的最后一个搜索输入)。我把
request.session['query\u x']=list()
request.session['query\u x']放在查询后的原始代码中。谢谢,Ashish。现在效果很好!我只使用了
request.session['query\u x'].append(query\u x)
,我知道我看到了所有的请求。谢谢如果我只放了一个,那么问题是通过
request.session['query\ux'].append(query\ux)
而不是
request.session['query\ux']=query\ux