我正在按如下方式搜索 Postgres:
search_term = self.request.GET.get('search')
queryset = Package.objects.filter(package_description__search=search_term)
如果 search_term 是 None
或空字符串,我如何让它返回所有对象?
我试过将 search_term 设置为 None
或空字符串。
最佳答案
Django 仅在您尝试获取查询项时才执行查询。所以你可以简单地添加 if
并组合你的查询
search_term = self.request.GET.get('search')
queryset = Package.objects.all()
if search_term:
queryset = queryset.filter(package_description__search=search_term)
文档链接 querysets-are-lazy感谢@bdoubleu
关于django - 使用 Django 搜索 PostgreSQL 并传递 null 或空字符串值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50309215/