2014-01-15 45 views
2

我在Django上创建我的博客,我想添加基于django-haystack的网站搜索。我做了一个干草堆的基本配置,使用官方手册,但是当我想测试我的搜索时,出现错误:'选项'对象没有属性'_fields'没有属性的Django干草堆'_fields'

这里是我的一些配置:

search_indexes.py
class PostIndex(indexes.SearchIndex, indexes.Indexable): 
    text = indexes.CharField(document=True, use_template=True) 
    title = indexes.CharField(model_attr='title') 
    pub_date = indexes.DateTimeField(model_attr='date') 

    def get_model(self): 
     return Post 

    def index_queryset(self, using=None): 
     """Used when the entire index for model is updated.""" 
     return self.get_model().objects.all() 
settings.py
HAYSTACK_CONNECTIONS = { 
'default': { 
    'ENGINE': 'haystack.backends.simple_backend.SimpleEngine', 
    }, 
} 

HAYSTACK_SIGNAL_PROCESSOR = 'haystack.signals.RealtimeSignalProcessor' 

所以这是我的问题。有没有人与smth类似?提前致谢!

+0

请发布回溯 – sk1p

+0

http://dpaste.com/1553389/这里是 –

+0

我有同样的问题。我的django form.py在1.4.1中工作正常,但是当我升级到1.6.1时。我遇到了你的问题,那是昨天。我的回溯告诉我,我在这条线上遇到了一个问题:for'model_field in SOA_detail._meta._fields():' – Charlesliam

回答

6

您正在碰到简单后端中的一个错误,它是fixed in git。似乎没有成为其中包含此修复程序,虽然释放,这样你就可以升级到开发版:

pip install -e git+https://github.com/toastdriven/[email protected]#egg=django-haystack 

或者使用不同的后端(elasticsearch,Solr的,...)