A respeito do framework Django (versão 4), os comandos que p...

Próximas questões
Com base no mesmo assunto
Q2510319 Programação
A respeito do framework Django (versão 4), os comandos que precisam ser executados após alterações nas classes contidas no arquivo models.py para que as mudanças surtam efeito no banco de dados são, respectivamente,
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: C - python manage.py makemigrations e python manage.py migrate.

Vamos entender por que essa é a alternativa correta e analisar as outras opções.

O Django é um framework de alto nível para desenvolvimento web, escrito em Python. Ele segue o padrão MVC (Model-View-Controller), que no Django é conhecido como MVT (Model-View-Template). As model classes em Django são definidas no arquivo models.py e representam a estrutura do banco de dados.

Quando você faz alterações nessas classes, é necessário refletir essas mudanças no banco de dados. Isso é feito em duas etapas principais:

1. python manage.py makemigrations: Esse comando detecta as alterações no models.py e cria um arquivo de migração que descreve essas mudanças.

2. python manage.py migrate: Esse comando aplica as migrações pendentes ao banco de dados, efetivando as mudanças.

Portanto, a sequência correta de comandos após alterações nas classes do models.py é python manage.py makemigrations seguido de python manage.py migrate.

Agora, vamos analisar as alternativas incorretas:

A - python manage.py migrate e python manage.py run: Essa alternativa está incorreta porque inverte a ordem dos comandos e inclui um comando inexistente. O comando python manage.py run não faz parte dos comandos padrões do Django.

B - python manage.py runmigrations e python manage.py migrate: Essa alternativa está incorreta porque o comando python manage.py runmigrations não existe. O comando correto para criar as migrações é makemigrations, e não runmigrations.

D - python manage.py db:makemigrations e python manage.py db:migrate: Essa alternativa está incorreta porque os comandos estão prefixados por db:, o que não é correto no contexto do Django. Os comandos corretos não devem ter esse prefixo.

Em resumo, a alternativa correta é C porque descreve com precisão os comandos necessários para refletir alterações no arquivo models.py no banco de dados do Django.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo