继承了我的最终目的,如果您有任何其他想法,请告诉我。
尝试在urls.py中执行此操作
from apps.search import search_indexes
import haystack
haystack.autodiscover()
如果没有导入search_indexes,将无法使用。
我还在设置中使用此hack来管理命令:
SKIP_COMMANDS = ['test']
if any([command in sys.argv for command in SKIP_COMMANDS]):
HAYSTACK_ENABLE_REGISTRATIONS = False
我想知道将HAYSTACK_ENABLE_REGISTRATIONS设置为假的整个时间是诚实的。
答案 0 :(得分:1)
将HAYSTACK_ENABLE_REGISTRATIONS设置为False不起作用。
然而我在Django 1.4,Apache mod_wsgi,Haystack 1.2.7上编写了一个适合我的配置。
试试这个配置:
myapp.search_indexes.py
from haystack import indexes, site
from apps.myapp.models import MyModel
class MyModelIndex(indexes.SearchIndex):
...
site.register(MyModel, MyModelIndex)
settings.py
HAYSTACK_SITECONF = 'apps.myapp.search_indexes'
SKIP_COMMANDS = ['test']
if any([command in sys.argv for command in SKIP_COMMANDS]):
HAYSTACK_ENABLE_REGISTRATIONS = False
...
如果只是从一开始就在文档中!