Я работаю над учебником по настройке Djapian и пытаюсь использовать оболочку индекса (как показано в на этом шаге ). Когда я запускаю команду «список», я получаю следующий вывод:
Installed spaces/models/indexers:
- 0: 'global'
Поэтому я не могу выполнить какие-либо запросы:
>>> query
No index selected
Что приводит меня к попытке:
>>> use 0
Illegal index alias '0'. See 'list' command for available aliases
Мой index.py выглядит следующим образом:
from djapian import space, Indexer, CompositeIndexer
from cms.models import Article
class ArticleIndexer(Indexer):
fields = ['body']
tags = [
('title', 'title'),
('author', 'author'),
('pub_date', 'pub_date',),
('category', 'category')
]
space.add_index(Article, ArticleIndexer, attach_as='indexer')
Обновление: Я переместил папку djapian из пакетов сайта в папку своего проекта и переместил index.py из корня проекта в папку djapian. Когда я запускаю 'list' в indexshell, теперь возвращается следующее:
>>> list
Installed spaces/models/indexers:
- 0: 'global'
- 0.0 'cms.Article'
-0.0.0: 'djapian.space.defaultcmsarticleindexer'
Я все еще ничего не могу сделать, хотя, когда я пытаюсь выбрать индекс, я все еще получаю следующую ошибку:
>>> use 0.0
Illegal index alias '0'. See 'list' command for available aliases
Обновление 2: У меня была проблема с настройкой DJAPIAN_DATABASE_PATH, которая сейчас исправлена. Я могу выбрать индексатор с помощью команды «использовать 0.0.0», но когда я пытаюсь выполнить запрос, он вызывает следующий ValueError: «Пустой слайс».