Django Python - Tudo o Que Você Precisa Saber - Programadores Brasil
Linguagens de programaçãoPythonTutoriais de Python

Django Python – Tudo o Que Você Precisa Saber

8 Mins read

Django Python é um framework da Web Python de alto nível que incentiva o desenvolvimento rápido e um design limpo e pragmático. Neste tutorial, responderemos à pergunta “Como faço para configurar um projeto Django (1.5, 1.6, 1.7 ou 1.8) do zero?” Em outras palavras, você aprenderá como instalar o Django e como configurar a estrutura do seu projeto.

Vamos aprender sobre como fazer um loop for em Python
Vamos aprender a configurar um projeto Django Python

Cursos de Programação -> Veja também: [+] 4 Dicas de Como Escolher Os Melhores Cursos de Programação.

Curso Completo para conserto de Notebooks -> Veja também: [+] Pacote Full Stack para Iniciantes em Programação.

Curso para Desenvolvimento de Games -> Veja também: [+] Curso completo de Desenvolvimento de Games

Curso de Python para iniciantes ->  Veja também: [+] Pacote Python Faixa preta para iniciantes.

Pré-requisitos do Tutorial

Você deve ter alguma experiência em Python e conhecer os comandos bash básicos do Unix. Se você nunca usou a linha de comando antes, familiarize-se com os seguintes comandos: pwd, cd, ls, rm e mkdir.

Para simplificar, todos os exemplos usam o prompt de estilo Unix:

$ python manage.py runserver

(O cifrão não faz parte do comando.)

Equivalente do Windows:

C:\> python manage.py runserver

(AMAZON) Iphones em promoção -> Veja também: [+] Iphones de diversos modelos com super desconto na Amazon.

(AMAZON) iPhone 11 Pro -> Veja também: [+] Compre seu iPhone 11 Pro com super desconto na Amazon.

Configuração

O que você precisa para um ambiente de desenvolvimento Django Python básico:

  • Python 2.7.x or 3.4.x (usaremos Python 2.7.8)
  • easy_install and Pip
  • Git
  • virtualenv
  • Django Python
  • Banco de Dados (SQLite, MySQL, PostgreSQL, MongoDB, etc.)
  • South (para versões do Django Python anteriores a 1.7)
  • Editor de texto (Sublime, vim, Komodo, gedit)

Python

Ambientes Unix vêm pré-instalados com Python. Para verificar sua versão do Python, execute o comando:

$ python -V
Python 2.7.8
$ python3 -V
Python 3.4.2

Se você já tem uma versão 2.7.x, vá para a próxima etapa. Caso contrário, baixe e instale a versão 2.7.x mais recente específica para o seu sistema operacional.

easy_install and pip

Easy_install e pip são gerenciadores de pacotes Python, que tornam muito mais fácil instalar e atualizar pacotes Python (e dependências de pacotes).

Para fazer o download do easy_install, vá para o Python Package Index (PyPI). Você precisa baixar ferramentas de configuração, que incluem easy_install. Baixe o pacote egg (.egg) e instale diretamente do arquivo.

Pip, por sua vez, é um wrapper que depende do easy_install, então você deve ter o easy_install configurado e funcionando antes de instalar o pip. Depois que easy_install estiver configurado, execute o seguinte comando para instalar o pip:

$ easy_install pip

Git

Git é um programa para controle de versionamento de código. Você pode verificar sua versão atual, se já tiver o git instalado, com o seguinte comando:

$ git --version
git version 2.3.0

Se você não tiver o git instalado na versão 1.7.x ou maior instalado, baixe a versão mais recente.

(AMAZON) Smartphones de todas as marcas -> Veja também: [+] Os melhores Smartphones com super desconto na Amazon. Clique e confira.

Banco de Dados

Neste projeto, usaremos o MySQL. Para começar, instale o MySQL. Em seguida, inicie o servidor e configure um novo banco de dados e um usuário:

$ mysql.server start
$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
mysql> CREATE DATABASE django_db;
Query OK, 1 row affected (0.01 sec)
mysql>
mysql> quit
Bye

virtualenv

É uma prática comum usar um virtualenv (ambiente virtual) para seus projetos Python, a fim de criar ambientes de desenvolvimento contidos dentro do próprio projeto (também chamados de sandboxes). O objetivo do virtualenv é evitar que diferentes versões de bibliotecas / pacotes mexam umas com as outras.

Pense no virtualenv como um contêiner completamente isolado dentro do seu computador, onde você pode utilizar qualquer versão do Python e instalar bibliotecas / pacotes e isso não afetará nada fora desse container. É como uma sala isolada e à prova de som dentro de sua casa, onde você pode gritar o mais alto que quiser, sobre qualquer coisa que quiser, e ninguém fora dessa sala pode ouvir.

Instale o virtualenv com o seguinte comando:

$ pip install virtualenv

Django 1.5

Lançado pela primeira vez em 26 de fevereiro de 2013, os novos recursos mais notáveis incluem:

  • Modelo de usuário configurável: em vez de ser forçado a usar a definição de “usuário” do Django, agora você pode criar seu próprio modelo de usuário, criando campos personalizados, como – links para perfis sociais, data de nascimento, cor favorita etc.
  • Suporte a Python 3: Django sugere não usar Python 3 em produção ainda, uma vez que o suporte ainda é “experimental”. No entanto, esse recurso é enorme para a comunidade Python como um todo, ajudando a colocar ainda mais pressão para mirar no Python 3 muito aprimorado.

Para configurar a sua estrutura de desenvolvimento, rode os comandos abaixo:

$ mkdir django15_project
$ cd django15_project
$ virtualenv env
$ source env/bin/activate

Você deve ver (env) antes de seu prompt, (env) $, indicando que você está executando dentro do virtualenv ‘env’.

Para sair do virtualenv, digite o seguinte comando:

$ deactivate

Em seguida, reative quando estiver pronto para trabalhar novamente.

Vamos instalar o Django:

$ pip install django==1.5.12

Você pode verificar a versão executando os seguintes comandos:

$ python
>>> import django
>>> django.get_version()
'1.5.12'

Configurando o Projeto

Django Python

$ django-admin.py startproject my_django15_project

Isso cria um novo diretório chamado “my_django15_project” com o diretório e estruturas básicas do Django:

├── manage.py
└── my_django15_project
    ├── __init__.py
    ├── settings.py
    ├── urls.py
    └── wsgi.py

Controle de versão

Antes de iniciar qualquer desenvolvimento, coloque seu projeto sob controle de versão. Primeiro, adicione um novo arquivo chamado .gitignore dentro do seu diretório “django15_project”, que é usado para ignorar arquivos desnecessários de serem adicionados ao repositório git.

Adicione o seguinte ao arquivo:

env
*.DS_Store
*.pyc
__pycache__

Agora inicialize (ou crie) um novo repositório Git e adicione suas alterações ao teste e, em seguida, ao repositório local.

$ git init
$ git add -A
$ git commit -am "initial commit"

Se você usa BitBucket, GitHub ou outro repositório remoto git, envie seus arquivos por push para o repositório remoto, assim pode ser acessado por outros usuários.

MySQL

Primeiro, instale o MySQL-python, que é um conector de banco de dados para Python:

$ pip install MySQL-python

Edite seu arquivo settings.py dentro de seu diretório “my_django15_project” para adicionar as seguintes informações sobre seu banco de dados que você configurou anteriormente:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'django_db',
        'USER': 'root',
        'PASSWORD': 'your_password',
    }
}

Crie suas tabelas de banco de dados e configure um superusuário:

$ cd my_django15_project
$ python manage.py syncdb

Execute o servidor de desenvolvimento:

python manage.py runserver

Você deve ver a seguinte saída se Django e o banco de dados estiverem configurados corretamente:

Validating models...

0 errors found
September 7, 2014 - 23:36:02
Django version 1.5, using settings 'my_django15_project.settings'
Development server is running at http://127.0.0.1:8000/
Quit the server with CONTROL-C.

Acesse o endereço http://127.0.0.1:8000 no seu navegador e você deverá ver a página Django “Funcionou!”. De volta ao seu terminal, elimine o servidor pressionando CONTROL-C.

South

South é usado para gerenciar mudanças em suas tabelas de banco de dados. Conforme seu aplicativo cresce e você precisa adicionar um campo a uma tabela específica, por exemplo, você pode simplesmente fazer alterações no banco de dados por meio de migrações com o South. Isso torna o desenvolvimento muito mais fácil.

Instale o South:

$ pip install south

pip freeze

Agora que todas as suas bibliotecas estão instaladas, use o seguinte comando para criar um registro das bibliotecas instaladas no diretório “my_django15_project”:

$ pip freeze > requirements.txt

Este comando é incrivelmente útil se você precisa recriar seu projeto do zero e precisa saber as bibliotecas / versões exatas que você precisa instalar.

Faça commit de suas novas mudanças no Git.

Set up your Django app

Para criar o seu aplicativo, rode o código abaixo:

$ python manage.py startapp myapp

A estrutura do seu projeto agora deve ser semelhante a esta:

├── manage.py
├── my_django15_project
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
└── myapp
    ├── __init__.py
    ├── models.py
    ├── tests.py
    └── views.py

Atualize o INSTALLED_APPS em seu arquivo settings.py:

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django.contrib.admin',
    'myapp',
    'south',
)

Aqui, habilitamos o admin, django.contrib.admin, e adicionamos os aplicativos myapp e south.

Abra urls.py e descomente estas três linhas:

from django.contrib import admin
admin.autodiscover()
url(r'^admin/', include(admin.site.urls)),

Para sincronizar seu banco de dados novamente:

$ python manage.py syncdb

Crie um arquivo de migration de banco de dados com o South:

$ python manage.py schemamigration myapp --initial

Para executar a migration rode o código abaixo:

$ python manage.py migrate myapp

Abra o servidor (python manage.py runserver) e navegue para http://127.0.0.1:8000/admin. Digite seu nome de usuário e senha de superusuário para acessar a página de administração.

Faça um commit com o Git. Por exemplo:

$ git add -A
$ git commit -am "updated settings, created app, added south, enabled django admin"

Usando o Git de forma correta

Se você não estiver usando GitHub ou Bitbucket como repositório remoto, deverá criar uma branch separada de seu repositório local de desenvolvimento.

Primeiro, crie um novo diretório chamado dev dentro do seu diretório django15_project, navegue até o diretório recém-criado e, em seguida, clone (copie) todo o seu projeto Django Python:

$ git clone /caminho/do/seu/arquivo/

Um examplo de caminho válido: /Users/michaelherman/desktop/django15_project

Este comando cria uma cópia exata do seu repositório, que inclui todos os seus commits e branches. Sempre desenvolva a partir deste diretório, criando branches separados para cada alteração importante em seu projeto:

$ git branch <nomedabranch>

Importante lembrar que os <> não fazem parte do comando, é só usado para separar o comando do pseudocódigo. Para mudar para essa branch:

$ git checkout <nomedabranch>

Para ver todas as branches disponíveis neste repositório, rode:

$ git branch

Sempre que desenvolver algo neste projeto, faça um commit das suas alterações:

$ git add .
$ git commit -m "mensagem explicando o que esse commit altera o código"

O primeiro comando coloca todas as alterações em um estado pronto para ser commitado, já o segundo faz o commit das alterações, salvando elas no repositório local. Para enviar essas alterações para o repositório remoto:

$ git push origin <nomedabranch>

Se você quiser juntas as alterações desta branch para a principal (master ou main):

$ git checkout master
$ git merge <nomedabranch>

Para pegar alterações feitas por outras pessoas no repositório remoto, use:

$ git pull

Fluxo de trabalho

Fluxo básico

  • Acesse o diretório do projeto
  • Ative o virtualenv
  • Crie código
  • Faça commit das alterações
  • deploy
  • Desative o virtualenv

Fluxo avançado

  • Acesse o diretório do projeto
  • Ative o virtualenv
  • Crie uma nova branch e mude para ela
  • Crie código
  • Faça commit das alterações
  • Faça merge das alterações na nova branch com a branch master ou main
  • Fala pull das alterações na branch de produção
  • deploy
  • Desative o virtualenv

Essa foi o tutorial Python de hoje, mas você pode ver outros que já fizemos antes sobre herança de classes, loops for e Python Anaconda.


Deixe o seu comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *