回答一个老问题,但也许有人发现这很有用,因为我刚刚遇到了这个需求。
在默认(保留为备用)之后,使用语言代码为每种语言创建一个后端配置。
WAGTAILSEARCH_BACKENDS = {
'default': {
'BACKEND': 'wagtail.contrib.postgres_search.backend',
'SEARCH_CONFIG': 'english',
},
'en': {
'BACKEND': 'wagtail.contrib.postgres_search.backend',
'SEARCH_CONFIG': 'english',
},
'nl': {
'BACKEND': 'wagtail.contrib.postgres_search.backend',
'SEARCH_CONFIG': 'dutch',
},
}
现在您可以从以下位置获取当前语言的后端
s = get_search_backend(backend=Locale.get_active().language_code)
这些是 POSTGRES 中的默认语言
$ psql -c "\dF"
架构 | 姓名 | 说明 ------------+------------+----------- ---------------- pg_catalog | 丹麦语 | 丹麦语pg_catalog的配置| 荷兰语 | 荷兰语 pg_catalog 的配置 | 英语 | 英语语言pg_catalog的配置| 芬兰语 | 芬兰语配置 pg_catalog | 法语 | 法语配置 pg_catalog | 德语 | 德语配置 pg_catalog | 匈牙利语| 匈牙利语配置 pg_catalog | 意大利语 | 意大利语配置 pg_catalog | 挪威语| 挪威语配置 pg_catalog | 葡萄牙语 | 葡萄牙语配置 pg_catalog | 罗马尼亚语| 罗马尼亚语 pg_catalog 的配置 | 俄语 | 俄语配置 语言 pg_catalog | 简单 | 简单配置 pg_catalog | 西班牙语 | 西班牙语配置 pg_catalog | 瑞典语 | 瑞典语配置 pg_catalog | 土耳其语 | 土耳其语配置