Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

ImportError: Couldn't import Django

Quando tento executar o runserver ou qualquer comando do tipo "python manage.py comando" eu obtenho o seguinte retorno:

(venv) geasi@geasi-HGL31I:~/Mateus/estudos/Alura/django/aplicacao$ python manage.py runserver
Traceback (most recent call last):
  File "/home/geasi/Mateus/estudos/Alura/django/aplicacao/manage.py", line 11, in main
    from django.core.management import execute_from_command_line
ModuleNotFoundError: No module named 'django'

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/geasi/Mateus/estudos/Alura/django/aplicacao/manage.py", line 22, in <module>
    main()
  File "/home/geasi/Mateus/estudos/Alura/django/aplicacao/manage.py", line 13, in main
    raise ImportError(
ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?

Eu instalei a versão 3.1.7 do django, mas quando chequei com o comando pip freeze, recebi a resposta "Django==1.1", desinstalei a versão 1 e reinstalei o Django agora na versão 3. Usando o comando pip freeze recebo Django==3.1.7. Já desinstalei e reinstalei o Django várias vezez, mas mesmo assim continuo tendo esse problema.

2 respostas
solução!

E aí, Mateus. Beleza?

Tenta dar uma olhada se você está tendo esse problema por causa da instalação dentro de algum ambiente virtual e na hora de rodar não está com ele ativo.

Se não for esse o caso, tenta usar o python3 manage.py. Eu não sei exatamente uma boa explicação pra isso, mas nós temos acesso a mais de um interpretador de python porque um deles executa funções de sistema e outros podem ser usados para codar. Se você for ao terminal e digirar python provavelmente o que vai aparecer pra você é o python 2.7.

Espero que ajude.

Abraço,

Fala Leonel

Realmente, o problema estava no ambiente virtual. Resolvi instalando a lib venv da versão do python que utilizo. Segue o código caso alguém precise:

sudo apt-get install python3.9-dev python3.9-venv

Agradeço pela resposta.