Tutorial Django Neste tutorial você aprenderá a instalar e configurar o Django, além de praticar através de um exemplo.
Instalando no Windows aixe e instale primeiramente o !"t#on $#ttp%&&www.p"t#on.org&download& $#ttp%&&www.p"t#on.org&download&'. '. ( instala)*o é simples execute execute o ar+uivo aixado cli+ue em - Next e escol#a o diret/rio em +ue o p"t#on será instalado. 0x.% -C:\Python27\ . 1ocê deve apenas se preocupar em configurar o p"t#on na variável de amiente para +ue o sistema possa recon#ecê2lo automaticamente. !ara ter acesso a variável de de amiente aperte as teclas Windows 3 !ause $a tecla Windows é a tecla com o logotipo do windows'. 4anela !ropriedades do sistema, cli+ue na aa Avançado e em seguida no ot*oVariáveis de ambiente .
Na caixa 1ariáveis do sistema cli+ue sore a variável com nome path e cli+ue emeditar .
Na janela editar variável de sistema edite a lin#a valor da variável adicionando o camin#o do diret/rio de instala)*o do p"t#on. 5upondo +ue você instalou em C:\Python27\ adicione -;C:\Python27\” no final da lin#a.
(p/s esta etapa o p"t#on já estará instalado e configurado. (gora vamos a instala)*o do Django +ue você pode aixar em#ttp%&&www.djangoproject.com&download&. (o aixar o ar+uivo ele vem com a extens*o tar.!, a maioria dos descompactadores mais novos já suportam esta extens*o, mas se o seu n*o suporta você pode aixar o 627ip $#ttp%&&www.627ip.org&' +ue tamém é um software livre. Descompacte o ar+uivo onde +uiser. Dentro da pasta onde você descompactou crie um ar+uivo e c#ame de - insta"ar.bat , edite usando o loco de notas e digite%
python set#p.py insta"" pa#se 5alve, fec#e o ar+uivo e execute. 8eito isso, o Django estará instalado.
(ten)*o% talve7 n*o seja necessário o passo a seguir. 1erifi+ue se sua vers*o do p"t#on já possui a ilioteca p"59:ite. (gora vamos seguir para o ;ltimo passo% instalar a ilioteca do anco de dados 59:ite. < 59:ite é um anco de dados simples, sem muitos recursos. = ideal para o amiente de cria)*o e desenvolvimento. N*o dá pra fa7er muitas coisas com ele, mas você dificilmente vai precisar de fa7er muitas coisas en+uanto cria seu site. !ara o Django traal#ar em conjunto com o 59:ite, é preciso apenas instalar uma ilioteca, c#amada p"59:ite, e nada mais. 0nt*o, vá até a página seguinte e fa)a o download do tarall $c/digo2fonte, com extens*o .tar.g7'.#ttp%&&oss.its"stementwic>lung.de&trac&p"s+lite&?Downloads. 5e a instala)*o do p"59:ite apresentar erros de compila)*o no Windows, tente instalar com um dos instaladores executáveis dispon@veis na página de download acima. Isso As ve7es ocorre por conse+uência de algum tipo de incompatiilidade entre compiladores. (p/s o download, fa)a o mesmo +ue fe7 com o Django% B. descompacte usando o 627ip C. crie o ar+uivo instalar.at com a+uele mesmo c/digo dentro . execute E. pronto. (gora você tem um amiente de desenvolvimento instalado para come)ar a usar.
Instalando no :inux Feralmente no linux já vem o !"t#on e o !"59: instalados. Desta maneira é apenas necessário instalar o Django executando o seguinte comando no diret/rio onde está o ar+uivo $%ano&'.2.(.tar.! %
tar x!v) $%ano&'.2.(.tar.! *d $%ano&'.2.( s#do python set#p.py insta"" !rontoG Neste tutorial desenvolvemos com Django na ID0 0clipse $#ttp%&&www.eclipse.org&downloads&'. !ara utili7ar o Django na ID0 0clipse é necessário aixar o plug2in Pydev, você pode fa7er isso utili7ando o pr/prio eclipse. (ra o eclipse utili7e o menu +e"p,-nsta"" Ne /o)tare... Na janela install cli+ue no ot*o Add... Na janela (dd 5ite digite o nome% Py$ev e :ocation% http:00pydev.or0#pdates
Deverá aparecer duas op)Hes%
ar+ue a caixa de sele)*o !"Dev e espere o download e configura)*o do plugin. (p/s isto você terá um amiente de desenvolvimento Django e poderá utili7ar a ID0 0clipse para programar. (gora vamos A prática...
Criando #ma Aenda Criando #m pro%eto *om Administrador
(p/s configurado o eclipse, vamos criar um projeto Django, cli+ue em novo e escol#a a op)*o !J<40KT, depois escol#a a op)*o Django !roject e N0LT.
Depois iremos dar um nome ao projeto, +ue iremos c#amar de Aenda, iremos escol#er a vers*o do !"t#on, ou a vers*o C.M ou C.6, a . n*o é compat@vel com o Django B.C, agora N0LT.
!or ;ltimo iremos escol#er a vers*o do Django é o anco de dados +ue iremos usar. 1amos usar a vers*o B.C do Django e vamos usar o 5+lite para modelar o anco, pois é mais simples de usar para esse exemplo.
(gora asta da um cli+ue em 8INI5O e o eclipse vai criar uma estrutura i+ual a essa.
1amos em Jun, ent*o o eclipse irá executar o servidor do Django, par ver se esta tudo correto ara um rowser $8irefox, K#rome. 0tc' e vamos digitar o endere)o -#ttp%&&local#ost%P& e iremos ver a seguinte página.
(gora vamos #ailitar a página do administrador do Django, vamos em settings.p", primeiro procure por -LANGUAGE_CODE = 'en-us' e mude para -LANGUAGE_CODE = 'pt-br', assim nossa página adminstrador do Django será em português. !rocure por -'django.contrib.admin', dentro de -INSTALLED_APPS” e descomete essa lin#a apagando o -?, preste aten)*o para +ue essa lin#a siga a identa)*o das demais. 8eito isso vamos em urls.p" e descometamos essas duas lin#as, ”from django.contrib imortadmin” ! "admin.a#todi$co%!r&'”( ! d!oi$ d!$com!tamo$ "&r '^admin/'(inc)#d!&admin.$it!.#r)$''(” . Agora é hora de usarmos o comando -s"ncd para sincroni7ar os dados da
aplica)*o com o ando e gerar as taelas do mesmo, vamos da um cli+ue com o ot*o direito do mouse em (genda e escol#er Django 22 Q 5"nc D. Kom isso vamos criar as taelar referente a pagina administrador do Django e vamos criar um superusuário com nome, e2mail e sen#a, lemre2se desses dados para os pr/ximos passos. Depois de executado podemos notar +ue um ar+uivo foi adicionado na pasta sr*, esse ar+uivo é o nosso anco.
1amos rodar nosso projeto outra vem em JRN e recarregar nossa pagina, se tudo foi feito certin#o até agora vamos ver esse erro%
0sse erro ocorreu por+ue agora temos uma página e s/ usamos a url do servidor, vamos agora tentar entrar nessa url% -#ttp%&&local#ost%P&admin& e você verá essa página%
(p/s o login entraremos nessa página%
Adi*ionando #ma ap"i*aç1o *om emp"ate
!ara adicionar uma aplica)*o vamos da um cli+ue com o ot*o direito do mouse em (genda22QDjango22Qcreate application, vamos dar o nome de contato a nossa aplica)*o, depois de aperta
(caamos de criar uma classe Kontato +ue #erda da classe odels e tem os atriutos nome, fixo, cel e endereco como campos de caracteres$K#ar8ield' com o taman#o especificado no parmetro e um atriuto email com um campo de e2mail$0mail8ield'. 1amos fa7er com +ue nossa aplica)*o se torne parte do nosso sistema, para +ue isso ocorra vamos arir novamente o settings.p" e adicionar contato no IN5T(::0DU(!!5%
(gora é s/ rodar o camando /3NC $4 +ue já usamos antes e vamos ver mais uma taela sendo criada, vamos ent*o fa7er com +ue nossa pagina de administrador possa interagir com a entidade +ue criamos, para isso dentro da pasta contado crie um ar+uivo com o nome -admin.p" e edite esse ar+uivo até ficar assim%
1amos rodar o servidor e ir ver a pagina do administrador, la veremos +ue Kontato já fa7 parte da nossa página, e temos a op)*o de adicionar um contato e modificar um contato existente.
Kli+ue em adicionar e vamos criar um contato, preenc#a os dados e cli+ue em salvar, note +ue o Django já fa7 tratamento de erro caso você colo+ue um e2 mail n*o valido. (p/s criar um contado vamos ver +ue ele vai aparecer em uma lista.
Note +ue o ojeto esta com o nome -Kontato oject, e isso n*o é interessante. !ara mudar isso vamos em models.p" para criar uma fun)*o +ue vai retorna o nome do contato.
Jecarregando a pagina ap/s a modifica)*o veremos +ue agora aparece o nome do contato.
4á é #ora de usarmos templetes para a nossa aplica)*o, dentro da pasta (genda vamos criar uma outra pasta com o nome -templates, depois de fa7ermos isso di7er ou Django onde esta esta pasta, para isso ara o settings.p" e acrescente esse import em desta+ue como mostra na figura, ele importa o -os para facilitar na #ora de pegar o endere)o da pasta onde esta o projeto.
Kom o import feito, vamos adicionar mais uma mudan)a no settings.p", s/ +ue dessa ve7 em - TE*PLATE_DI+S” adicionando o caminho da pasta templates como na figura.
Criando um Template
Crie um arquivo com o nome “base.html”, ele é nosso HTM est!tico que ser! usado pelos outros HTMs. "dite#o para que fique assim.
Com essas tags “$% bloc& content %'$% endbloc& %'” podemos enviar dados do ()ango que ser! transformado em HTM. Agora dentro da pasta templates criaremos outra pasta com o nome “contato”, nesta pasta ficar! todas os HTMs de contato, dentro dela vamos criar um arquivo com o nome “list.html”, vamos us!#lo para listar os nossos contatos. Antes de editar esse arquivo precisamos criar a fun*+o que vai passa a lista dos contatos para o HTM, abra o vies.p- e edite#o assim
"stamos importando a classe Contato que criamos no models.p- e importando fun*/es do ()ango para redirecionar os dados para um HTM. 0o come*o da fun*+o criamos a vari!velcontatos e atribu1mos a ela todos os contatos, e estamos retornando uma reposta com o endere*o do arquivo list.html que criamos antes e a vari!vel contatos. 2recisamos agora criar a url que ir! chamar essa fun*+o, ent+o vamos em urls.p- e adicionamos a seguinte linha como mostra a figura.
Assim criamos um url “contato3listar” com o endere*o da fun*+o que criamos antes, )! é hora de editarmos o list.html, vamos dei4ar o arquivo desse )eito
A gora temos um HTM que vai receber a vari!vel contatos e vai e4ibir a lista de contatos, podemos perceber que na primeira linha estamos estendendo a base.html e )untando com o list.html, o “block content” de list.html vai substituir o “block content” da base.html. (epois de salvar tudo vamos rodar o pro)eto para ativar o servidor e vamos acessar a p!gina “http33localhost56663contato3listar ”, e se tudo der certo vamos ver a lista de contatos que voc7 cadastrou na p!gina do administrador. Usando Genéricos
8amos usar agora as fun*/es genéricas do ()ango para criar e editar um contato. 9! podemos fa:er isso através da p!gina do administrador, mais vamos fa:er isso usando template. 8amos abrir o urls.p- e vamos acrescentar mais duas urls, uma para editar e outra para criar, vamos dei4ar o urls.p- assim.
2rimeiro importe Contato como mostra na segunda linha, ent+o vamos fa:er a url criar que tem como par;metro a fun*+o genérica “create\d+) ” que tem a fun*+o de pegar o id do ob)eto que ser! editado, e a segunda é a fun*+o genérica que dessa ve: é a “update
Agora podemos rodar o pro)eto e criar novos contatos e editar os )! e4istentes.