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

[Bug] Erro na migração da base de produção

Boa noite.

Por favor, alguém pode me ajudar com o problema abaixo?

Após ajustar o arquivo .env e executar o comando "python manage.py makemigrations" obtenho a seguinte mensagem de erro:

File "manage.py", line 14
    ) from exc
         ^
SyntaxError: invalid syntax

o arquivo .env está assim:

[config]
# Secret configuration
SECRET_KEY = 'r*5ltfzw-61ksdm41fuul8+hxs$86yo9%k1%k=(!@=-wv4qtyv'

# conf
DEBUG=True

# Database
DB_NAME = "todo"
DB_USER = "devops"
DB_PASSWORD = "mestre"
DB_HOST = "localhost"
DB_PORT = "3306"

o arquivo manage.py está assim:

#!/usr/bin/env python
import os
import sys

if __name__ == '__main__':
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'to_do.settings')
    try:
        from django.core.management import execute_from_command_line
    except ImportError as exc:
        raise 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?"
        ) from exc
    execute_from_command_line(sys.argv)

Vale ressaltar que executei este mesmo comando para a base dev, antes de ajustar o arquivo .env para produção e funcionou.

Ou seja, funcionou para dev mas não está funcionando para produção.

2 respostas
solução!

Oii Anderson, tudo bem?

O problema pode estar relacionado à versão do Python que você tá usando.

Você poderia verificar qual a versão do python foi instalada na máquina, por favor? Pra isso você pode executar o comando:

python --version

Se a versão 3 não estiver instalada, você precisará baixar e instalar a versão mais recente do Python 3.x no site oficial do Python (https://www.python.org/).

Após instalar o Python 3, verifica se o ambiente de produção tá configurado para usar a versão correta do Python. Certifique-se de que o interpretador Python correto esteja sendo usado para executar o arquivo manage.py.

Depois você pode tentar executar o mesmo comando, mas agora usando a versão 3 do python:

python3 manage.py makemigrations

Ah e um adendo: Esse erro também ocorre quando esquecemos de instalar o django dentro do ambiente virtual. Para isso, tem que usar:

pip install django

Espero ter te ajudado.

Um abraço e bons estudos.

Obrigado Lorena, refiz os passos aqui e funcionou. Devo ter me confundido com algo no processo.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software