Наш веб-сайт работает с Python 3.6.5 и:
- django == 1.11.20
- django-haystack == 2.8.1
- certifi == 0.0.8
- urllib3 <1.25,> = 1.21.1
- pysolr == 3.8.1
Я создал файл schema.xml с помощью django-haystack (python manage.py build_solr_schema> schema.xml) и вставил его в websolr (версия heroku).
Когда я запускаю следующую команду:
heroku run python manage.py rebuild_index --app terradiem
Я получаю следующую ошибку:
Не удалось добавить документы в Solr: Solr ответил с ошибкой (HTTP 400): [Причина: ОШИБКА: [doc = naturalearth.naturalearthmerged.12001] неизвестное поле 'django_ct']
Traceback(последний вызов был последним): файл "/app/.heroku/python/lib/python3.6/site-packages/haystack/backends/solr_backend.py", строка 72, в обновлении self.conn.add (документы, коммит= commit, boost = index.get_field_weights ())
Файл "/app/.heroku/python/lib/python3.6/site-packages/pysolr.py", строка 918, в add overwrite = overwrite, обработчик = обработчик)
File "/app / .heroku / python / lib / python3.6 / site-packages / pysolr.py ", строка 500, в _update
return self._send_request ('post', path, message, {'Content-введите ':' text / xml;charset = utf-8 '})
Файл "/app/.heroku/python/lib/python3.6/site-packages/pysolr.py", строка 412, в _send_request поднять SolrError (error_message% (resp.status_code, solr_message)) pysolr.SolrError: Solr ответил с ошибкой (HTTP 400): [Причина: ERROR: [doc = naturalearth.naturalearthmerged.12001] неизвестное поле 'django_ct']
Я думаю, это связано со следующими строками в schema.xml:
<field name="id" type="string" indexed="true" stored="true" multiValued="false" required="true"/>
<field name="django_ct" type="string" indexed="true" stored="true" multiValued="false"/>
<field name="django_id" type="string" indexed="true" stored="true" multiValued="false"/>
Любая подсказка?