1 / 29

Introdução ao Framework Django

Introdução ao Framework Django. Geovanny Filho geovannyfilho@gmail.com. O que é um framework?. Quem sou eu?.

floyd
Download Presentation

Introdução ao Framework Django

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introdução ao Framework Django Geovanny Filho geovannyfilho@gmail.com

  2. O que é um framework? Quem sou eu?

  3. “é uma estrutura de suporte definida em que um outro projeto de software pode ser organizado e desenvolvido. Um framework pode incluir programas de suporte, bibliotecas de código, linguagens de script e outros softwares para auxiliar no desenvolvimento e unir diferentes componentes de um projeto de software.” “Frameworks são projetados com a intenção de facilitar o desenvolvimento de software, habilitando designers e programadores a gastarem mais tempo determinando as exigências do software do que com detalhes de baixo nível do sistema.”

  4. Sobre o Django • Framework web de alto nível • Voltado ao desenvolvimento ágil • Escrito em Python \O/ • Ênfase na reusabilidade e na plugabilidade • Open Source

  5. Características do Django • Modelo em camadas MVC • Mapeamento Objeto Relacional (ORM) • Baseado no conceito DRY (Don’trepeatyourself) • Desenvolvimento dirigido a testes (TDD)

  6. Sobre o Python • Altíssimo nível • Interpretada • Multiparadigma (OO, procedurale funcional, OA) • Multiplataforma

  7. Sobre o Python • Tipagem dinâmica e forte • Coletor de lixo • Código limpo • Fácil de aprender

  8. Como funciona o Django

  9. Como funciona o Django

  10. Estrutura de uma aplicação Django Template View Model

  11. Projetos e aplicações • Como os sistemas em Django são organizados? • Cada sistema é composto por uma ou mais aplicações; • Aplicações são agrupadas em um “projeto”, embora • não seja obrigatório. Projetos são uma forma de representação amigável; • Cada site usa um único arquivo de configurações, • normalmente chamado settings.py, que diz ao • Django que aplicativos usar e como usá-los; • O arquivo de configuração também tem uma grande • variedade de configurações do sistema.

  12. Configurando o settings.py

  13. Models • Camada de abstração do banco de dados • São classes que herdam de django.db.models.Model • Definem as entidades do sistema • Possuim campos que representam campos do banco de dados • Cada instância de classe representa uma linha no banco de dados

  14. Models Sem relações Pessoa nome telefone email

  15. Gerando o banco de dados Comando>pythonmanage.pysyncdb

  16. Conhecendo o Shell Comando>pythonmanage.pyshell

  17. Models Um para muitos Clube Nome 1 * Jogador nome numero_camisa

  18. Models Muitos para muitos Aluno nome * * Disciplina nome

  19. Models Herança persistente Animal nome Gato nome_raça

  20. Conhecendo o Admin • É uma aplicação plugável que vem por padrão no framework • Gera uma interface administrativa com pouco trabalho • Acelera a produtividade • Não tão flexível

  21. Usando o Admin • Adicione a aplicação django.contrib.admin às • INSTALLED_APPS no settings.py; • Localize o arquivo urls.py; • Descomente as seguintes linhas: • –> # fromdjango.contribimportadmin • – ># admin.autodiscover() • – ># (r'^admin/', include(admin.site.urls)),

  22. URL Dispatcher • Utilizar URLs limpas e elegantes • Django permite que você defina as URLs que quiser • Não são necessários .php .jsf.jsp ou outras coisas sem o menos sentido • URL na forma de expressão regular • Mapeamento das URLs pode ser tão extenso quanto curto quanto necessário

  23. Urls elegantes

  24. Views • Views são simplesmente funções Python; • Views têm pelo menos um argumento, um objeto HttpRequest; • Views devem ou retornar um objeto HttpResponse ou uma exceção apropriada. • A resposta pode ser um conteúdo HTML de uma página, ou um redirecionamento, ou um erro 404, ou um documento XML, ou uma imagem ou qualquer outro conteúdo, como um arquivo PDF por exemplo

  25. Templates • A linguagem de templatedo djangofoi designada para estabelecer um equilíbrio de facilidade e flexibilidade • Um template contém variáveis e tags, quando o templateé avaliado essas variáveis são substituidas por valores

  26. Templates: variáveis • Para acessar o valor de uma variável no templateutilizamos o nome dele dentro de chaves : {{ variavel }} • Utilizasse (.) para acessar atributos de objetos : {{objeto.atributo }} • Se a variável não for referenciada, o templatevai inserir o valor da configuração TEMPLATE_STRING_IF_INVALID, que é “” (string vazia) por padrão

  27. Templates: tags • Em resumo, templatetagé uma declaração em seu código HTML que executa uma funçãopythonpor trás da cortina. Esta função retorna um trecho de código HTML que será preenchido no local da declaração. • Você pode criar suas próprias tags • Exemplos de tags: {% ifvariavel %} ...{% endif %}, • {% for item in variavel %}...{% endfor %}, {% url view %}

  28. Herança de Templates • A mais poderosa e mais complexa parte da enginede templates do django. A herança de templates possibilita criar uma base “esqueleto” que contem os elementos mais comuns de um site. • Permite a criação de blocos que facilitam a criação de conteúdo dinâmico • Tags: {% extends ‘pai.html’ %} ,{% block nome %}

  29. Dúvidas?

More Related