每当用户第一次导航到搜索页面(因此尚未输入查询)时,我都试图返回SearchQuerySet
中的所有对象。根据{{1}}的{{1}}方法的文档字符串:
no_query_found
因此,按照以下说明进行了尝试:
SearchForm
但是,这将返回一个空列表。看来我遇到了与this one类似的问题。我想知道是否已解决此问题,如果不是,返回相关def no_query_found(self):
"""
Determines the behavior when no query was found.
By default, no results are returned (``EmptySearchQuerySet``).
Should you want to show all results, override this method in your
own ``SearchForm`` subclass and do ``return self.searchqueryset.all()``.
"""
return EmptySearchQuerySet()
中所有对象的最佳方法是什么,以便在用户搜索之前向用户显示所有结果。
如果有用,我的观点基本上是:
class MySearchForm(SearchForm):
def no_query_found(self):
return self.searchqueryset.all()
还有一个注意事项,当我输入搜索字符串时,一切正常,所以这是一个孤立的问题(即,我运行过SearchQuerySet
等)。