Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.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 Haystack - Fatal编程技术网

Django 视野中的干草堆

Django 视野中的干草堆,django,django-haystack,Django,Django Haystack,伙计们。我就是不能从Haystack教程/文档跳到我的(简单的)应用程序 我已经按照教程的要求完成了Haystack/Whoosh,并提供了结果。现在,我想从(比如说)我的存档页面的表单中搜索,并将结果返回到同一页面,而不是单独的搜索页面 我已经准备好了,显示搜索表单,并返回查询: def blog_list(request, template_name="blog/blog_list.html"): query=request.GET.get('q','') form=Mode

伙计们。我就是不能从Haystack教程/文档跳到我的(简单的)应用程序

我已经按照教程的要求完成了Haystack/Whoosh,并提供了结果。现在,我想从(比如说)我的存档页面的表单中搜索,并将结果返回到同一页面,而不是单独的搜索页面

我已经准备好了,显示搜索表单,并返回查询:

def blog_list(request, template_name="blog/blog_list.html"):
    query=request.GET.get('q','')
    form=ModelSearchForm({'q': query })

    extra_context = {
         'query': query,
        'form': form,
    }
    return object_list(
        request,
        queryset=Entry.live.all(),
        extra_context=extra_context
    )
但是在模板中,
{%for result in page.object_list%}
没有返回任何内容。我一半的问题是,我不知道
page.object\u list
来自何处,也无法从教程/文档中了解它


有人能帮我解释一下吗?谢谢。

您还没有传入任何名为
的页面,所以它自然是空的。它不会“来自”任何地方,除非你明确地传递它


您似乎没有做的部分实际上是执行搜索并将结果传递给模板。看看Haystack的内置功能是如何实现的——它调用表单的
.search()
方法,将结果传递给
Paginator
类,然后将结果传递给上下文。

我想我可以回答,当我设置
(r'^search/',include('Haystack.url'),
时,我并没有特别传递任何东西,但它确实存在。但是感谢你的指导——当我看到
基本搜索
(并意识到我在看什么)时,它就就位了。我也遇到了同样的问题。我想创建一个简单的自定义搜索,但无法从教程中跳转。你有没有想过?