我在某些项目中使用 Haystack 2.3.0 ,一切都符合预期(至少目前为止)。
假设我有 project1 和 project2 :
是否有一种简单的方法可以从 project1 查询 project2 而无需向 Haystack 添加新数据库?
是否可以修改SearchQuerySet 网址 或类似内容?
HAYSTACK_CONNECTIONS
指向 project2 , project1 的查询将在上进行project2 索引?project2 settings.py:
HAYSTACK_CONNECTIONS = {
'default': {
'ENGINE': 'project2.search_backends.CustomElasticSearchEngine',
'URL': '127.0.0.1:9200',
'INDEX_NAME': 'haystack',
},
}
假设project2的外部IP为123.123.123.123
如果我添加 project1 settings.py:
HAYSTACK_CONNECTIONS = {
'default': {
'ENGINE': 'project1.search_backends.CustomElasticSearchEngine',
'URL': '123.123.123.123:9200',
'INDEX_NAME': 'haystack',
},
}
我对这种方法的关注是,从 project1
查询时,我不想错误地修改 project2 的索引答案 0 :(得分:0)
最后解决了将 project2 网址添加到 project1 HAYSTACK_CONNECTIONS
让我们在 project2 url = 123.123.123.123
的问题中,我已将 project1 settings.py配置为:
HAYSTACK_CONNECTIONS = {
'default': {
'ENGINE': 'project1.search_backends.CustomElasticSearchEngine',
'URL': '123.123.123.123:9200',
'INDEX_NAME': 'haystack',
},
}
这样,所有来自 project1 的查询都会被发送到 project2
中的Haystack / ElasticSearch