我尝试用Django上的Haystack创建搜索索引时遇到了一些问题,我不知道该怎么做。在
以下是我的两款车型:
# Meta: stores meta data about tutorials (category, title)
class Meta(models.Model):
"""
Database [tutorial.meta]
"""
mta_title = models.CharField(max_length=TUTORIAL_TITLE_MAX)
mta_views = models.PositiveIntegerField(default=0)
# Contents: stores the tutorial text content
class Contents(models.Model):
"""
Database [tutorial.contents]
"""
tut_id = IdField()
cnt_body = BBCodeTextField()
现在,我想将我的SearchIndex基于以下3个字段:mta_title、mta_views和cnt_body。以下是我当前的搜索索引:
^{pr2}$我看过on this question,答案是创建一个prepare_nt_主体。但我不知道我该还什么。在
谢谢大家。在
不需要“准备”。只需使用您在“文本”字段中提到的模板。在应用程序“myapp”中,创建文件templates/search/index/myapp/tutorialmeta_文本.txt. 在此文件中,使用标准Django模板语言模型引用创建以下条目,如下所示:
然后您需要使用新模板(/管理.py重建索引)。这将针对每个对象索引三个引用字段中的每一个。使用此方法,您还可以从SearchIndex类中省略“title”、“views”和“cnt_body”字段,以及“prepare”方法。在
谢谢你奥雷亚先生
但我的解决方案是使用一个简单的prepare函数:
相关问题 更多 >
编程相关推荐