我正在尝试在django网站上使用django-haystack与xapian后端建立搜索功能。我跟着方向按: http://django-haystack.readthedocs.org/en/latest/tutorial.htmldjango-haystack给出错误无法在搜索处打开索引/ xapian/xapian_index
当我输入一个搜索它抛出的错误: 无法打开在搜索索引/的Xapian/xapian_index
看来,当我跑 没有搜索索引创建./manage.py rebuild_index 但是,当时没有错误报告。
我试图指数的myapp/models.py以下模型:
class MyMsg (models.Model):
msg = models.TextField(max_length=2000)
pub_date = models.DateTimeField('date published')
author = models.ForeignKey(User)
def __unicode__(self):
return self.msg
我在MYAPP/search_index.py以下搜索索引:
class MyMsgIndex(indexes.SearchIndex, indexes.Indexable):
text = indexes.CharField(document=True, use_template=True)
author = indexes.CharField(model_attr='author')
pub_date = indexes.DateTimeField(model_attr='pub_date')
def get_model(self):
return MyMsg
def index_queryset(self):
"""Used when the entire index for model is updated."""
return self.get_model().objects.filter(pub_date__lte=datetime.datetime.now())
我使用: 草垛1.2.4 的Xapian 1.2.12 MAC OS X 10.6.8
提前感谢您帮助。
当你运行'rebuild_index'时,你看到它有多少个模型索引的统计信息?我注意到教程没有明确创建任何模型对象。 – 2012-08-02 01:42:19
python manage.py rebuild_index的输出是:WARNING:这将无法从连接“default”的搜索索引中删除所有东西。 之后您的选择是通过'rebuild_index'命令从备份中恢复或重建。 您确定要继续吗? [y/N] y 删除索引中的所有文档,因为您这样说。 删除所有文件。 – Roland 2012-08-02 01:56:19
就是这样?你是否创建了任何'Note'对象(或者你选择索引的任何模型)? – 2012-08-02 01:58:53