0% acharam este documento útil (0 voto)
28 visualizações8 páginas

Django

O documento descreve o funcionamento do framework Django, detalhando o fluxo de requisições do navegador até a renderização das views. Inclui comandos essenciais para rodar o servidor, criar projetos e apps, além de instruções para configurar URLs, views, arquivos estáticos e sistema de login. Também aborda como alterar o banco de dados e relacionar tabelas usando chaves estrangeiras.

Enviado por

asalunopentagono
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
28 visualizações8 páginas

Django

O documento descreve o funcionamento do framework Django, detalhando o fluxo de requisições do navegador até a renderização das views. Inclui comandos essenciais para rodar o servidor, criar projetos e apps, além de instruções para configurar URLs, views, arquivos estáticos e sistema de login. Também aborda como alterar o banco de dados e relacionar tabelas usando chaves estrangeiras.

Enviado por

asalunopentagono
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Passo a passo de como funciona o framework:

- Navegador faz uma requisição para o servidor no endereço de IP

- A requisição chega e é encaminhada para a porta que o programa Django está


rodando

- Django compara os caminhos recebidos na requisição com os disponíveis no


arquivo urls.py (se cria um path no arquivo urls.py geral para o do programa em si,
no caso o urls.py do Notes, que por sua vez vai chamar uma view)

- O arquivo views.py é onde são definidas funções que vão criar as views para o
usuário. Essas funções recebem o request como argumento e retornam a view em
HTML/Templates que serão recebidas pelo navegador e renderizadas no site.

Comandos:

- Para rodar o servidor o codigo é "python manage.py runserver"

- Para se gerar a estrutura básica de um projeto Django: "django-admin startproject


getit ." - esse comando inicia o projeto chamado getit

- Para migrações (uma vez): "python manage.py makemigrations"

- Para migrações (a cada atualização): "python manage.py migrate"

- Para criar admin: "python manage.py createsuperuser"

- Para criar venv, no vscode apertar "command + shift + p" e digitar "create
environment"

- Para criar novo app "python manage.py startapp note" chamando note

Início de uma aplicação:

- Adicione o novo app na pasta de settings em INSTALLED APPS, como o seguinte


exemplo: "nomeapp.apps.NotesConfig".

- No arquivo models.py devem ser declaradas as colunas do banco de dados e uma


função str que define com o objeto será exibido, ou seja, a função é chamada
quando é necessária uma representação em string do objeto
- Após concluir as mudanças no banco de dados, deve-se migrar (utilizando os
comandos descritos acima) essas alterações.

- Para administrar o banco de dados é necessário criar um usuário admin (com o


comando descrito acima) e dar um run server.

- No arquivo admin.py, dentro do diretório da aplicação o seguinte código deve ser


transcrito

URLS e Views:

- No arquivo pai de URLS, adiciona-se esse código:


- Cria-se um arquivo urls dentro do diretório da aplicação. Nesse arquivo filho URLS
(que no caso é o "notes.urls") são definidos o resto dos caminhos para as views:

- O path de deletar e editar é diferente justamente pela necessidade de se coletar o ID


do objeto que será gerenciado.

- No diretório da aplicação, após se criar o arquivo de views.py se cria uma função


para cada view que se deseja exibir em algum momento na aplicação.
- Dentro do arquivo da aplicação se cria outro de templates. Nele se cria um arquivo
com o nome da aplicação e o outro chamado registration. Dentro do com o nome da
aplicação são colocados os arquivos de html das views desejadas + base:
- Quando se deseja criar um formulário no html, no form da coisa é preciso adicionar
method = post e action = "/".

Adicionando Arquivos Estáticos:

- Dentro do arquivo da aplicação criar um uma pasta chamada static. Dentro dessa
pasta criar uma pasta com o nome da aplicação. Dentro dela criar uma pasta
chamada css e outra chamada img. Dentro da img serão carregadas as imagens e
dentro da css se cria o style.css.

- Para esses arquivos funcionarem no html eu coloco a tag de load static.


Sistema de Login:

- Dentro da pasta registration criada anteriormente se coloca o html do login, no caso,


login.html

- Além disso, no arquivo pai de URLS, adicione a path para login.

- Adicione isso nas settings do projeto:


- No codigo base de html deve se adicionar um trecho de codigo:

- Esse @login_required antes da definição da função faz com que o usuário seja
redirecionado automaticamente para a página de login se não estiver logado

Alterando Banco de Dados:

- Para se relacionar uma tabela a outra (no caso a do usuário que tem o seu ID e a da
nota) se cria um foreign key (no caso o id_author).

- Para se alterar um modelo dessa forma, se da um makemigration e dps um migrate


no terminal.

- Digite 1 como resposta para o que for perguntado quando a migração for realizada.

- Se coloca o autor em views.py como o user quando vai se criar uma nova nota e
também na hora de filtrar as notas deixar apenas aquelas do autor em questão.

Você também pode gostar