2012-09-01 52 views
2

我试图让Django Endless pagination在搜索表单上工作。 我在线上看到的所有示例和教程都展示了如何使用简单的.all()查询集来实现,但我需要按照我在POST中搜索的结果进行过滤。Django无尽的分页与request.method =='POST'?

这是我的观点看起来像现在:

@page_template("core/search_box.html") 
def search(request,template = "core/search.html",page_template = "core/search_box.html",extra_context = None): 
if request.is_ajax(): 
    #template=page_template() 
    #users = Skill_User.objects.filter(skill__name__icontains=content).order_by('-level') 
    #return render_to_response(template , {'page_template': page_template,'menu_home_active':True, 'form':search_form, 'result':users} , context_instance) 
    return HttpResponse("AJAX") 
elif request.method == 'POST': 
    search_form = SearchForm(request.POST) 
    # If Form is Valid 
    if search_form.is_valid(): 
     type = search_form.cleaned_data['type'] 
     content = search_form.cleaned_data['content'] 
     print 'CONTENT ' + str(content) 
     if (type == 'O'): 
      users = Skill_User.objects.filter(skill__name__icontains=content).order_by('-level') 
     elif (type == 'G'): 
      users= {} 
    return render_to_response(template , {'page_template': page_template,'menu_home_active':True, 'form':search_form, 'result':users} , context_instance=RequestContext(request)) 
else: 
    return HttpResponse("NOT OK") 

所以搜索是在POST完成。但是,我怎样才能将这个搜索POST事件传递给由无尽分页插件完成的ajax查询?我评论了request.ajax()部分的所有内容,我只需要“用户”填写与POST请求后相同的数据。基本上,现在当我向下滚动时,我已经显示出“AJAX”,并且我还想要其余的查询。

任何想法?关于这一点,我还没有发现任何明显的网络。我来自PHP背景,我会考虑$_SESSION[]变量。 Django中有类似的东西吗?

回答

1

好的,它可以通过一个简单的request.session[""]对象来实现。

相关问题