Primeiros passos com Django

Primeiros passos com Django

Django é um framework gratuito e de código aberto escrito em Python de aplicativos da web. É uma estrutura da web Python de alto nível que incentiva o desenvolvimento rápido, bem como um estilo limpo e pragmático com o qual você pode criar sites elegantes e de alto desempenho com eficácia.

Além disso, o Django fornece componentes prontos para uso que lidam com a autenticação do usuário (registro, login, logoff), um painel de administração para o seu site, formulários, uma maneira de fazer upload de arquivos e muito mais.

Django é:

  • Claro.
  • Escalável.
  • Sustentável.
  • Portátil.

Se você gosta de programar, vai gostar de trabalhar com Django. Tem uma grande comunidade, muita documentação e suporte.

O que você precisa?

  • Ter o Python 3.6 ou superior instalado.
  • Algum editor de código como Visual Studio Code ou PyCharm.
  • CLI.
  • Ter a documentação oficial:

Python: https://www.python.org/

Django: https://www.djangoproject.com/

Anatomia do Django


O Django usa a arquitetura MVT (Model-View-Template), um padrão de design de software para modelar um aplicativo implementando três camadas distintas: Model, View e Template.

Modelo: Representa uma estrutura lógica de dados por trás de um aplicativo inteiro. É a interface para os seus dados, responsável pela manutenção dos seus dados.

Visão: É o que se observa no navegador ao visualizar um site. É representado por arquivos HTML, CSS e Js. Ao definir variáveis, loops e instruções condicionais, você cria páginas dinâmicas e adiciona interatividade ao seu aplicativo.

Template: Um modelo é um modelo estático para criar conteúdo dinâmico. Um modelo consiste em partes estáticas da saída HTML desejada, bem como uma sintaxe especial que descreve como o conteúdo dinâmico será inserido. O mecanismo de templates usa isso para criar um documento HTML que contém partes estáticas e dinâmicas.

Comecemos


1) Crie o diretório do contêiner do projeto.

mkdir django_project

2) Ative o ambiente virtual com venv ou pyenv.

3) Instale Django:

pip install django

4) Inicializar o repositório:

git init

5) Inicializar o projeto do Django:

django-admin startproject django_project

6) Para evitar enviar arquivos desnecessários para o repositório remoto, é importante criar o arquivo

.gitignore

Estrutura dos arquivos Django


  • _init_.py: Arquivo Python clássico indicando que uma pasta é um pacote.
  • asgi.py / wsgi.py: Ele é usado para executar o deploy do aplicativo.
  • settings.py: Define as configurações do projeto.
  • urls.py: Define o ponto de entrada para todas as solicitações que chegam ao projeto. É um conjunto de arquivos que usamos para implantar nosso app.manage.py. Ele mostra diferentes comandos que temos disponíveis para fazer nosso projeto funcionar.

Toda vez que você criar um projeto web (sendo você mesmo o criador), ele sempre "viverá" em dois lugares:

  • Em local: Ambiente de trabalho que criamos e editamos para desenvolver.
  • En producción: É o servidor (nunca tocamos no código diretamente). O Django nos permite usar um servidor de desenvolvimento (local) e, para vê-lo, executamos o comando py manage-py runserver.


ORM Object Relational Mapping


ORM (Object-Relational Mapping) é uma técnica que permite criar um Banco de Dados Orientado a Objetos (virtual), que opera sobre o Banco de Dados Relacional (real).

Ao usar o ORM, podemos operar no banco de dados aproveitando as características da orientação a objetos, como herança e polimorfismo.

A camada ORM do Django permite que os desenvolvedores usem código Python para interagir com dados de backend, em vez de escrever consultas SQL manualmente. É compatível com uma ampla variedade de sistemas de gerenciamento de banco de dados.

Django admin


É um painel de controle personalizável que gerencia os dados do seu aplicativo e faz alterações em uma interface simples baseada na web. O painel é construído sobre o Django ORM e facilita a criação, leitura, atualização e exclusão de itens do seu banco de dados.

Seu design simples e layout claro facilitam o uso, além de oferecer excelente segurança para garantir que seus dados não sejam comprometidos por pessoas não autorizadas.


Muito seguro


O Django contém vários utilitários relacionados à segurança que ajudam a mitigar vulnerabilidades de segurança comuns. O mais importante deles são os filtros de modelo, que embaralham os dados e a saída HTML para evitar ataques XSS.

O Django também possui middleware, que ajuda a proteger contra injeção de SQL, falsificação de solicitação entre sites (CSRF), clickjacking e execução remota de código.

Autenticação de usuários


O sistema de autenticação no Django é responsável por gerenciar contas de usuários, grupos, permissões e sessões de usuários baseadas em cookies. Você pode usar o sistema interno do Django para lidar com a autenticação e as sessões do usuário.

O sistema fornece mecanismos para login e logout, geração de senhas para novos usuários e alteração de senhas para usuários existentes, bem como verificação de credenciais de login. Esses mecanismos podem ser estendidos com backends personalizados, além de contar com comandos de gerenciamento de autenticação.

O Django inclui um sistema de autenticação com personalizações flexíveis. O sistema consiste em usuários e grupos que controlam as permissões de cada conta. As permissões podem ser sinalizadores binários que designam se um usuário pode executar uma determinada tarefa, e os grupos fornecem uma maneira de aplicar rótulos e permissões a mais de um usuário. Você pode configurar as opções de login do seu site usando formulários, painéis de administração, visualizações ou qualquer outro método necessário.


Documentação


É bem apresentado, fácil de entender e tem exemplos. O que eu mais gosto é que há uma seção separada para cada versão e temas, para que você possa ver claramente como ela evolui e adaptar seu código conforme necessário durante a atualização.

Aprender uma estrutura de programação ajuda a criar aplicativos mais flexíveis, dinâmicos e escaláveis. Django é um framework web de código aberto escrito em Python e licenciado sob a GNU Lesser General Public License versão 3.0. Oferece velocidade e agilidade para desenvolvimento de sites dinâmicos, integração de sistemas e outras aplicações complexas.

O Django tem sido usado em milhares de aplicativos de larga escala, incluindo Disqus, Instagram, Mozilla, spotify e WalmartLabs.

Espero que esta informação o ajude em seus projetos. Até a próxima!

💡
As opiniões e comentários expressos neste artigo são de propriedade exclusiva de seu autor e não representam necessariamente o ponto de vista da Revelo.

A Revelo Content Network acolhe todas as raças, etnias, nacionalidades, credos, gêneros, orientações, pontos de vista e ideologias, desde que promovam diversidade, equidade, inclusão e crescimento na carreira dos profissionais de tecnologia.