配置全文检索和搜索引擎,以及生成索引文件
https://blog.csdn.net/weixin_44834666/article/details/105808957
1)配置url——在项目中的urls.py文件的urlpatterns中添加
path('search/', include('haystack.urls')), # 全文检索的url,到templates目录下的search文件夹中找search.html
2)配置搜索表单
<!-- 浏览器显示的地址是/search/search.html -->
<form action="/search" method="get">
<!-- name固定是q action="模板文件路径" method固定是get -->
<input type="text" name="q" placeholder="搜索">
<input type="button" name="" value="">
</form>
3)创建search.html模板文件,搜索出结果后,haystack会把搜索出的结果传递给templates/search目录下的search.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
搜索的关键字:{{ query }} <br>
当前页对象{{ page }}
</body>
</html>
其他的一些上下文属性
query | 关键字 |
page | 当前页的page对象 –>遍历page对象,获取到的是SearchResult类的实例对象,对象的属性object才是模型类的对象。就是需要通过 实例对象.object.xxx 取得相应的值 |
paginator | 分页paginator对象 |
HAYSTACK_SEARCH_RESULTS_PER_PAGE | 可以控制每页显示数量,再setting中配置 |