Пытаетесь запустить тесты Django, получаете ошибку при загрузке pysqlite2 или sqlite3?

Я пытаюсь запустить тесты в проекте, который не принадлежит мне, когда я тестирую python manage.py, я получаю

raise ImproperlyConfigured("Error loading either pysqlite2 or sqlite3 modules (tried in that order): %s" % exc)
django.core.exceptions.ImproperlyConfigured: Error loading either pysqlite2 or sqlite3 modules (tried in that order): No module named '_sqlite3'

Я установил sqlite3 и pysqlite2 и все пакеты dev-lib, он говорит мне, что требования уже выполнены. Я установил их за пределами виртуальной среды, я считаю, что это моя проблема, но я боюсь использовать sudo apt-get remove, потому что в прошлый раз, когда я использовал эту команду, я удалил почти всю свою Ubuntu. Какие-либо предложения?


person RPG    schedule 07.06.2017    source источник
comment
Итак, в настоящее время ваш проект работает внутри Virtualenv?   -  person Abijith Mg    schedule 07.06.2017
comment
@AbijithMg да, это так   -  person RPG    schedule 07.06.2017
comment
Вы пытались установить модули внутри виртуальной среды и повторить попытку?   -  person John Moutafis    schedule 07.06.2017
comment
У меня, к сожалению, нет решения @JohnMoutafis   -  person RPG    schedule 07.06.2017


Ответы (2)


  • Внутри вашей виртуальной среды:

    pip install pysqlite2
    

ПРИМЕЧАНИЕ: модуль sqlite3 включен в стандартную библиотеку (начиная с Python 2.5).

РЕДАКТИРОВАТЬ: попробуйте установить следующее:

sudo apt-get update && sudo apt-get upgrade
sudo apt-get install libsqlite3-dev libsqlite3
person Abijith Mg    schedule 07.06.2017
comment
уже пробовал это, я получаю сообщение об ошибке: Не удалось найти версию, удовлетворяющую требованию pysqlite2 (из версий:) Не найдено подходящего дистрибутива для pysqlite2 - person RPG; 07.06.2017
comment
Я думаю, проблема в том, что мне нужно переустановить python3.4, чтобы обновить эти установки, но как мне это сделать? Я использую Ubuntu 16, если я использую apt-get remove, я боюсь, что могу удалить все, что содержит python - person RPG; 07.06.2017
comment
Я пробовал почти все, что мог найти в SO, без переустановки python. Только потому, что я не знаю, как. - person RPG; 07.06.2017
comment
С вашим редактированием я получаю: E: Не удалось найти пакет libsqlite3 - person RPG; 07.06.2017
comment
Выполните sudo apt-get update && sudo apt-get upgrade согласно новому редактированию, затем попробуйте. - person Abijith Mg; 07.06.2017
comment
Я все еще получаю ту же ошибку, что и выше, не могу найти пакет libsqlite3 :( - person RPG; 07.06.2017

Поскольку я использую Ubuntu, я установил python из терминала, а не из источника. Установка, которую я сделал, не должна включать sqlite3.

Шаги, которые я предпринял для решения проблемы:

Загрузите исходный файл нужной версии Python из источника. Извлеките папку куда-нибудь, перейдите в папку,

./configure
make
make install

исправил мою проблему.

person RPG    schedule 07.06.2017