You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
O -e SECRET_KEY indica ao docker para já exportar a SECRET_KEY (isso quando você usa comandos docker de subir imagens)
"Migrações" são uma maneira de “salvar” as alterações que você fez no banco de dados. É uma lista de scripts de sql, que facilitam a integração das alterações feitas em diferentes ambientes de desenvolvimento. Ele verifica as informações que você tem no banco e o que você deveria ter no seu banco, e então o atualiza.
O Django permite você criar as aplicações e “plugar” no seu projeto. Isso facilita a adição de novas funcionalidades, a arquitetura Django permite que você crie a funcionalidade uma vez e utiliza-la depois em qualquer outro projeto. Plugins ,ou seja, igual a peças de lego.
Dentro do instaled apps, em settings.py é onde ficam os apps que estão sendo usados. As seis primeiras são as aplicações universais, que vêm com o projeto.
Podemos customizar o admin, a partir de permissões que podemos dar e revogar para determinado usuário cadastrado. É tudo feito através da interface e você brincar com elas, só não esquece que se vc revogar as permissões do admin ou você não vai poder mexer nelas de novo.
Comandos manage.py
Abre um terminal com os diretórios django já carregado
./manage.py shell
Mostra tabelas já criadas
./manage.py showmigrations
Aplica alterações no banco de dados referentes as tabelas criadas
./manage.py migrate
Trocar senha do usuário
./manage.py changepassword <nome do usuario>
Mostra as migrações feitas
manage.py showmigrates
Linhas inseridas no django:
Em settings.py
Importa a biblioteca dotenv
from dotenv import load_env
................................
Indica seu arquivo .env
env_file:
.....- .env
................................
Indica ao docker que deve exportar as variáveis descritas no arquivo .env quando a imagem for criada
Links
Repositório do Roger
link dos passos de uso da bibli. debug
Link para pacotes prontos django
link dos passos de uso da bibli. debug
GitHub - wsvincent/awesome-django: A curated list of awesome things related to Django
Escondendo informações na aplicação Django.
Django Debug Toolbar - Django Debug Toolbar 3.5.0 documentation
https://ohmycode.com.br/variaveis-de-ambiente-e-chaves-secretas-com-python-decouple/#:~:text=env na pasta do projeto,não seja um projeto Django
Conceitos e dicas:
O
-e SECRET_KEY
indica ao docker para já exportar a SECRET_KEY (isso quando você usa comandos docker de subir imagens)"Migrações" são uma maneira de “salvar” as alterações que você fez no banco de dados. É uma lista de scripts de sql, que facilitam a integração das alterações feitas em diferentes ambientes de desenvolvimento. Ele verifica as informações que você tem no banco e o que você deveria ter no seu banco, e então o atualiza.
O Django permite você criar as aplicações e “plugar” no seu projeto. Isso facilita a adição de novas funcionalidades, a arquitetura Django permite que você crie a funcionalidade uma vez e utiliza-la depois em qualquer outro projeto. Plugins ,ou seja, igual a peças de lego.
Dentro do instaled apps, em settings.py é onde ficam os apps que estão sendo usados. As seis primeiras são as aplicações universais, que vêm com o projeto.
Podemos customizar o admin, a partir de permissões que podemos dar e revogar para determinado usuário cadastrado. É tudo feito através da interface e você brincar com elas, só não esquece que se vc revogar as permissões do admin ou você não vai poder mexer nelas de novo.
Comandos manage.py
Abre um terminal com os diretórios django já carregado
./manage.py shell
Mostra tabelas já criadas
./manage.py showmigrations
Aplica alterações no banco de dados referentes as tabelas criadas
./manage.py migrate
Trocar senha do usuário
./manage.py changepassword <nome do usuario>
Mostra as migrações feitas
manage.py showmigrates
Linhas inseridas no django:
Em settings.py
Importa a biblioteca dotenv
from dotenv import load_env
................................
Indica seu arquivo .env
env_file:
.....
- .env
................................
Indica ao docker que deve exportar as variáveis descritas no arquivo .env quando a imagem for criada
docker compose-up
................................
No arquivo settings.py:
................................
atualizar settings.py:
................................
Settings.py, logo no início depois dos imports:
................................
Settings.py:
................................
Em secret_key é possível passar um parâmetro adicional, indicando o que o desenvolvedor deve fazer
SECRET_KEY = os.getenv('SECRET_KEY', 'quando não tiver outra, use bla blabla')
................................
Adicionar a configuração de ip no final do settings.py:
Em urls.py
Atualizar as urls.py:
Nos arquivos Html:
No template Html, mostra o nome de usuário
{{ user }}
No template Html, mostra o primeiro nome do usuário
< p>
{{ user.first_name }}
</ p>O código abaixo facilita a verificação de variáveis que você não sabe o que é.
Instalações
pip install python-decouple
(enviado pela Gaby)pip install python-dotenv
(enviado pelo Roger)pip install django-debug-toolbar
Comandos no Terminal
Linux
Ativa o ambiente virtual
source .venv/bin/activate
Exporta uma variável
export SECRET_KEY = 'KHFCJHSIFHSIHFHBDHBDSHBSDBHIDBH'
Gera uma chave aleatória , bom para ser usada como SECRET_KEY
python -c 'from django.core.management.utils import get_random_secret_key;
print(get_random_secret_key())'
$ env (lista todas as variaveis de ambiente)
Shell do manage.py
Importa o módulo settings
from django_cursos import settings
settings.SECRET_KEY
Mostra o valor da variável no shell
$SECRET_KEY
Ou
settings.SECRET_KEY
Pega o valor da variável de ambiente, senão, retorna none
os.getenv("<nome da variável>")
Os Erros Comuns:
error: unapplied migrations - Você tem aplicações que existem no seu projeto, que têm dados mas você não criou essas tabelas.
Informações sobre documentos em django:
The text was updated successfully, but these errors were encountered: