Я использую HstoreField в одной из своих моделей, и когда я пытаюсь ее протестировать, я получил ошибку psycopg2.ProgrammingError: ERROR: function hstore(integer[], text[]) does not exist
. Если я правильно понял эту проблему, это произошло потому, что расширение hstore не было настроено в базе данных, как это было сделано при миграции, добавив операцию HStoreExtension (documentation).Работа с HstoreField в тестах django
Как настроить расширение hstore в базе данных тестов по умолчанию и решить мою проблему?
У вас есть миграция, которая устанавливает расширение? У вас есть зависимости, чтобы они выполнялись до любых миграций, которые создают «HStoreField»? – Alasdair
@Alasdair Да, расширение hstore было установлено в файле миграции 12-го приложения 15, и все работает нормально, но тесты. И мне жаль, но я не понял второго вопроса, что вы имеете в виду под зависимостями? – DiA
Постараюсь объяснить по-другому. Один (или более) из ваших моделей использует «HStoreField». Если миграция, которая создает первый «HStoreField», - это миграция 13 или более, это нормально, потому что расширение установлено в миграции 12. Если, например, миграция 10 создает первый «HStoreField», тогда у вас есть проблема, потому что расширение isn ' t, установленный к этому моменту. – Alasdair