Django-haystack:使用多个模型创建搜索索引

时间:2015-07-03 15:25:41

标签: django elasticsearch django-haystack

我开始在Django-haystack和弹性搜索上进行实验。

使用:

django-haystack==2.4.0
elasticsearch==1.6.0

models.py

class Skill(models.Model):
    name = models.CharField(max_length=100)

class City(models.Model):
    name = models.CharField(max_length=100)

我想为上述模型创建一个搜索索引:

class multiIndex(indexes.SearchIndex, indexes.Indexable):
    #other code
    def get_model(self):
        return (Skill, City)

是否可以使用多个模型创建搜索索引。或者我必须为多个模型创建多个搜索索引。

注意:两个模型完全独立。

1 个答案:

答案 0 :(得分:2)

您无法为多个模型创建一个SearchIndex;你不是故意的。如果你的模型相似,你可以使用一些继承(但我认为技能和城市没有多少共同之处)。

你的目的是创造SkillIndex& CityIndex。

你可以一起搜索它们;我想这就是你想做的事,不是吗?