Pular para o conteúdo principal

Django: O Guia Completo Para Iniciar No Framework Mais Poderoso do Python

Django

O Django é um dos Frameworks web mais sólidos, seguros e produtivos do mercado. Se você quer criar sites, APIs, sistemas completos ou aplicações corporativas, aprender  Django é um passo obrigatório no caminho profissional como dev Python.

📌 O que você vai aprender:

  • O que é Django e por que ele é tão usado
  • Como instalar e criar seu primeiro projeto
  • Como funciona a arquitetura MTV
  • Como criar rotas, views, modelos e templates
  • Como conectar ao banco de dados
  • Como criar um CRUD completo
  • Como trabalhar com o Django Admin
  • Como preparar o projeto para produção

🎯 O que é Django?

Django é um framework web full stack escrito em Python e baseado no padrão MTV (Model–Template–View). É conhecido por:

  • Segurança robusta
  • Produtividade altíssima
  • Admin automático
  • ORM poderoso
  • Ecosistema maduro
  • Documentação excelente

Empresas que usam Django:


⚙️ Instalando o Django

pip install django

Criando seu primeiro projeto:

django-admin startproject meu_projeto

cd meu_projeto

python manage.py runserver

Acesse no navegador: http://127.0.0.1:8000


🧱 Arquitetura MTV do Django

Camada Função
Model Regras de dados, ORM e conexão com o banco
Template Parte visual da aplicação
View Lógica da aplicação

🗂️ Criando um App no Projeto

python manage.py startapp blog

Agora registre o app em settings.py:

INSTALLED_APPS = [

    'django.contrib.admin',

    'django.contrib.auth',

    'blog',

]


📝 Criando uma View

Dentro de blog/views.py:

from django.http import HttpResponse



def home(request):

    return HttpResponse("Bem-vindo ao meu blog!")

Rota no arquivo meu_projeto/urls.py:

from django.contrib import admin

from django.urls import path

from blog.views import home



urlpatterns = [

    path('admin/', admin.site.urls),

    path('', home),

]


📄 Trabalhando com Templates

Crie o arquivo:

blog/templates/blog/home.html

Conteúdo:

<h1>Bem-vindo ao meu blog!</h1>

<p>Essa página é renderizada usando templates Django.</p>

View usando template:
from django.shortcuts import render



def home(request):

    return render(request, 'blog/home.html')


🗃️ Criando Models e Banco de Dados

from django.db import models



class Post(models.Model):

    titulo = models.CharField(max_length=200)

    conteudo = models.TextField()

    criado_em = models.DateTimeField(auto_now_add=True)



    def __str__(self):

        return self.titulo

Gerando tabelas:

python manage.py makemigrations

python manage.py migrate


🔥 Criando um CRUD Completo

Listar Posts

def listar_posts(request):

    posts = Post.objects.all()

    return render(request, 'blog/listar.html', {'posts': posts})

Template:
<h1>Posts</h1>



{% for post in posts %}

    <h2>{{ post.titulo }}</h2>

    <p>{{ post.conteudo|slice:":150" }}...</p>

    <hr>

{% endfor %}

Criar Post

from django.shortcuts import redirect



def criar_post(request):

    if request.method == "POST":

        titulo = request.POST['titulo']

        conteudo = request.POST['conteudo']

        Post.objects.create(titulo=titulo, conteudo=conteudo)

        return redirect('/posts/')

    

    return render(request, 'blog/criar.html')

Formulário:
<form method="POST">

    {% csrf_token %}

    <input type="text" name="titulo" placeholder="Título"><br>

    <textarea name="conteudo"></textarea><br>

    <button type="submit">Salvar</button>

</form>


🏛️ Django Admin

python manage.py createsuperuser

Registrar model:
from django.contrib import admin

from .models import Post



admin.site.register(Post)


🚀 Preparando para Produção

  • Definir DEBUG = False
  • Configurar ALLOWED_HOSTS
  • Servir arquivos estáticos com collectstatic
  • Configurar Gunicorn ou uWSGI
  • Usar Nginx como proxy reverso
  • Usar PostgreSQL em produção

📚 Conclusão

Django é um dos frameworks mais completos e eficientes do mundo Python. Ele permite construir desde pequenos sites até grandes aplicações profissionais com segurança, velocidade e organização.


Tags: Django, Python, Desenvolvimento Web, Web Framework, Backend, MVC, MTV, REST API, Django REST Framework, ORM, Django Admin, Full Stack, Programação, CRUD, Banco de Dados, PostgreSQL, SQLite, Deploy Django, Tutorial Django, Curso Django, Framework Python, Desenvolvimento Backend, Segurança Web, Produtividade Python, Sites em Python

Comentários

Mais vistas

Os Melhores Sites para Programar de Graça: Aprenda e Pratique Online

A programação é uma habilidade indispensável no mercado atual, seja para desenvolver websites, criar aplicações ou trabalhar com dados. Felizmente, existem muitas plataformas gratuitas

Tutorial: Criando uma Animação de Roleta de Prêmios usando HTML, CSS e JavaScript

Animação Roleta de Prêmios: Descubra como criar uma animada roleta de prêmios com este tutorial detalhado. Este projeto consiste em uma Animação,  uma roleta

Assembly: A Linguagem de Baixo Nível que se Comunica com o Hardware

A linguagem Assembly é uma das mais antigas e fundamentais linguagens de programação, sendo frequentemente descrita como uma linguagem de "baixo nível". Ao contrário de

Autocode: Significado e Funcionalidade

O Que é Autocode? O Autocode é amplamente reconhecido como uma das primeiras linguagens de programação de computadores e um marco histórico no desenvolvimento