我正在尝试搜索后端的所有页面,以查找具有过时域名的 url 实例。但是当我搜索时,它似乎只根据页面标题而不是它们的内容来获得点击量。有什么我需要配置才能完成这项工作吗?
谢谢!
我正在尝试搜索后端的所有页面,以查找具有过时域名的 url 实例。但是当我搜索时,它似乎只根据页面标题而不是它们的内容来获得点击量。有什么我需要配置才能完成这项工作吗?
谢谢!
要搜索所有页面类型(例如标题)以外的字段,您需要在页面模型上定义一个search_fields
属性,例如:
from wagtail.search import index
class MyPage(Page):
body = StreamField(...)
search_fields = Page.search_fields + [
index.SearchField('body')
]
设置完成后,您需要更新搜索索引以包含这些新数据,方法是运行./manage.py update_index
.
如果您运行的是 2.14.x 或更早版本,您还需要设置替代搜索后端,例如 Postgres 或 Elasticsearch -默认wagtail.search.backends.db
搜索后端非常有限,仅支持在“核心”字段(例如标题)上进行搜索。从 2.15 开始,新的wagtail.search.backends.database
后端可用并在新项目中启用,并且完全支持跨所有领域的搜索。