SlideShare uma empresa Scribd logo
1 de 13
Baixar para ler offline
Não se repita - Django Generic Views.
Ramiro Luz
26 de Abril de 2015
Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 1 / 13
Sobre o autor
Ramiro Batista da Luz, pós-graduado em Engenharia de Software pela
UTFPR em mestrado prossional, ênfase em métodos ágeis.
Programador, iniciou a carreira em 1996, organizador da
PythonBrasil[6].
Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 2 / 13
Sobre a palestra
O que é Django?
Conceitos básicos.
Interface de administração.
Visões.
Generic views.
Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 3 / 13
O que é o Django?
Framework de desenvolvimento web escrito em Python.
Concebido para implementar aplicações rapidamente atendendo a
demanda intensa de prazos de jornalismo da operação Web de um
jornal chamado World Online.
Recebeu o nome em homenagem à um guitarrista de jazz chamado
Django Reinhardt.
Possui três camadas separadas, Model, View e Template, que serão
abordadas nos próximos slides.
Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 4 / 13
Conceitos básicos
Para trabalhar com Django é iniciado um projeto.
O projeto possui aplicações.
A aplicação possui modelos (models), representando as tabelas do
banco de dados.
As visões (views), selecionam, ltram e preparam os dados
representados pelo modelo e encaminham para os templates.
E os templates utilizam os dados preparados pelas visões para
apresentá-los.
Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 5 / 13
Django request/response
http://rnevius.github.io/django_request_response_cycle.png
Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 6 / 13
Interface de administração
Django automatiza a criação de interface administrativa para os
modelos
Permite que os administradores do site editem conteúdo.
Não foi projetado para ser usado pelos visitantes do site.
Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 7 / 13
Visões (views)
Equivale a uma página web dinâmica de uma aplicação.
Geralmente serve a uma função especíca e está associada à um
template.
Cada view é representada por uma função ou método.
As views são associadas a URLs através de um sistema de
mapeamento de URL para uma função ou Classe.
Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 8 / 13
Generic Views
São atalhos para tarefas comuns.
Abstraem padrões comuns ao ponto de não ser necessário escrever
código em Python para desenvolver uma aplicação.
Basta congurar a URL, declarar a view, congurar o modelo e o
template que devem ser usados.
Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 9 / 13
Demostração
SHOW ME TE CODE.
Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 10 / 13
Contato
@ramiroluz
ramiroluz@gmail.com
Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 11 / 13
Agradecimentos
OBRIGADO!
Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 12 / 13
Referencias
Django: http://www.djangoproject.com
Demostração:
https://github.com/ramiroluz/flisol2015-django-demo
Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 13 / 13

Mais conteúdo relacionado

Destaque

Criando testes com Plone
Criando testes com PloneCriando testes com Plone
Criando testes com PloneRamiro Luz
 
Testes de Unidade para C++
Testes de Unidade para C++Testes de Unidade para C++
Testes de Unidade para C++Ramiro Luz
 
Testes e depuração de código com Python
Testes e depuração de código com PythonTestes e depuração de código com Python
Testes e depuração de código com PythonDorneles Treméa
 
Workshop de introdução ao python - TADS 2015
Workshop de introdução ao python - TADS 2015Workshop de introdução ao python - TADS 2015
Workshop de introdução ao python - TADS 2015Ramiro Luz
 
Minerando dados com Python
Minerando dados com PythonMinerando dados com Python
Minerando dados com PythonRamiro Luz
 
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.Ramiro Luz
 
Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.Ramiro Luz
 

Destaque (7)

Criando testes com Plone
Criando testes com PloneCriando testes com Plone
Criando testes com Plone
 
Testes de Unidade para C++
Testes de Unidade para C++Testes de Unidade para C++
Testes de Unidade para C++
 
Testes e depuração de código com Python
Testes e depuração de código com PythonTestes e depuração de código com Python
Testes e depuração de código com Python
 
Workshop de introdução ao python - TADS 2015
Workshop de introdução ao python - TADS 2015Workshop de introdução ao python - TADS 2015
Workshop de introdução ao python - TADS 2015
 
Minerando dados com Python
Minerando dados com PythonMinerando dados com Python
Minerando dados com Python
 
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.
Não se repita - Django Generic Views - Semana Acadêmica TADS 2015.
 
Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.Python, por onde começar - Semana Technológica UTFPR 2015.
Python, por onde começar - Semana Technológica UTFPR 2015.
 

Semelhante a Django Generic Views

F R A M E W O R K D J A N G O
F R A M E W O R K  D J A N G OF R A M E W O R K  D J A N G O
F R A M E W O R K D J A N G Ofabio.thomaz
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonIgor Sobreira
 
Componentes UI5 - SAP Inside Track Joinville 2015 - Fábio Pagoti
Componentes UI5 - SAP Inside Track Joinville 2015 - Fábio PagotiComponentes UI5 - SAP Inside Track Joinville 2015 - Fábio Pagoti
Componentes UI5 - SAP Inside Track Joinville 2015 - Fábio PagotiFábio Luiz Esperati Pagoti
 
30º GDG Uberaba - Introdução AngularJS 4 com CLI
30º GDG Uberaba - Introdução AngularJS 4 com CLI30º GDG Uberaba - Introdução AngularJS 4 com CLI
30º GDG Uberaba - Introdução AngularJS 4 com CLIPedro Moura
 
Python e Django
Python e DjangoPython e Django
Python e Djangopugpe
 
Django para desenvolvimento web; porque ser repetitivo é chato.
Django para desenvolvimento web; porque ser repetitivo é chato.Django para desenvolvimento web; porque ser repetitivo é chato.
Django para desenvolvimento web; porque ser repetitivo é chato.Arthur Furlan
 
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação WebDjango Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação Webantonio sérgio nogueira
 
Desmitificando as aplicações RESTFul usando Django Rest Framework
Desmitificando as aplicações RESTFul usando Django Rest FrameworkDesmitificando as aplicações RESTFul usando Django Rest Framework
Desmitificando as aplicações RESTFul usando Django Rest FrameworkBruno Oliveira
 
2° Codelab - Por onde começar com AngularJS
2° Codelab  - Por onde começar com AngularJS2° Codelab  - Por onde começar com AngularJS
2° Codelab - Por onde começar com AngularJSGDGFoz
 
Ruby on Rails como deve ser utilizada e onde - Julio Cartier Maia Gomes
Ruby on Rails como deve ser utilizada e onde - Julio Cartier Maia GomesRuby on Rails como deve ser utilizada e onde - Julio Cartier Maia Gomes
Ruby on Rails como deve ser utilizada e onde - Julio Cartier Maia GomesPotiLivre Sobrenome
 
MVC 3 & razor (DevBrasil Summit 2011)
MVC 3 & razor (DevBrasil Summit 2011)MVC 3 & razor (DevBrasil Summit 2011)
MVC 3 & razor (DevBrasil Summit 2011)José Roberto Araújo
 
Drupal service com Titanium
Drupal service com TitaniumDrupal service com Titanium
Drupal service com Titaniumpedrofaria
 

Semelhante a Django Generic Views (20)

F R A M E W O R K D J A N G O
F R A M E W O R K  D J A N G OF R A M E W O R K  D J A N G O
F R A M E W O R K D J A N G O
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com Python
 
Componentes UI5 - SAP Inside Track Joinville 2015 - Fábio Pagoti
Componentes UI5 - SAP Inside Track Joinville 2015 - Fábio PagotiComponentes UI5 - SAP Inside Track Joinville 2015 - Fábio Pagoti
Componentes UI5 - SAP Inside Track Joinville 2015 - Fábio Pagoti
 
Django
DjangoDjango
Django
 
30º GDG Uberaba - Introdução AngularJS 4 com CLI
30º GDG Uberaba - Introdução AngularJS 4 com CLI30º GDG Uberaba - Introdução AngularJS 4 com CLI
30º GDG Uberaba - Introdução AngularJS 4 com CLI
 
Python e Django
Python e DjangoPython e Django
Python e Django
 
Introdução AngularJS 4 com CLI
Introdução AngularJS 4 com CLIIntrodução AngularJS 4 com CLI
Introdução AngularJS 4 com CLI
 
Django para desenvolvimento web; porque ser repetitivo é chato.
Django para desenvolvimento web; porque ser repetitivo é chato.Django para desenvolvimento web; porque ser repetitivo é chato.
Django para desenvolvimento web; porque ser repetitivo é chato.
 
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação WebDjango Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
 
Desmitificando as aplicações RESTFul usando Django Rest Framework
Desmitificando as aplicações RESTFul usando Django Rest FrameworkDesmitificando as aplicações RESTFul usando Django Rest Framework
Desmitificando as aplicações RESTFul usando Django Rest Framework
 
Python agil
Python agilPython agil
Python agil
 
Introdução a Django
Introdução a DjangoIntrodução a Django
Introdução a Django
 
2° Codelab - Por onde começar com AngularJS
2° Codelab  - Por onde começar com AngularJS2° Codelab  - Por onde começar com AngularJS
2° Codelab - Por onde começar com AngularJS
 
Ruby on Rails como deve ser utilizada e onde - Julio Cartier Maia Gomes
Ruby on Rails como deve ser utilizada e onde - Julio Cartier Maia GomesRuby on Rails como deve ser utilizada e onde - Julio Cartier Maia Gomes
Ruby on Rails como deve ser utilizada e onde - Julio Cartier Maia Gomes
 
Ruby on rails como deve ser utilizada e onde
Ruby on rails como deve ser utilizada e ondeRuby on rails como deve ser utilizada e onde
Ruby on rails como deve ser utilizada e onde
 
Mvc 3 & razor
Mvc 3 & razorMvc 3 & razor
Mvc 3 & razor
 
MVC 3 & razor (DevBrasil Summit 2011)
MVC 3 & razor (DevBrasil Summit 2011)MVC 3 & razor (DevBrasil Summit 2011)
MVC 3 & razor (DevBrasil Summit 2011)
 
Python
PythonPython
Python
 
Drupal service com Titanium
Drupal service com TitaniumDrupal service com Titanium
Drupal service com Titanium
 
PHP: Como não programar em POG
PHP: Como não programar em POGPHP: Como não programar em POG
PHP: Como não programar em POG
 

Mais de Ramiro Luz

Institutional Website - the longest project of my life
Institutional Website - the longest project of my lifeInstitutional Website - the longest project of my life
Institutional Website - the longest project of my lifeRamiro Luz
 
Plone Portal, cultural and economic challenges in public organizations
Plone Portal, cultural and economic challenges in public organizationsPlone Portal, cultural and economic challenges in public organizations
Plone Portal, cultural and economic challenges in public organizationsRamiro Luz
 
Portal Modelo - Plone for Parliaments
Portal Modelo - Plone for ParliamentsPortal Modelo - Plone for Parliaments
Portal Modelo - Plone for ParliamentsRamiro Luz
 
Para que serve o Python
Para que serve o PythonPara que serve o Python
Para que serve o PythonRamiro Luz
 
Python, por onde começar? @FTSL2014
Python, por onde começar? @FTSL2014Python, por onde começar? @FTSL2014
Python, por onde começar? @FTSL2014Ramiro Luz
 
Flisol 2014 - Python, por onde começar?
Flisol 2014 - Python, por onde começar?Flisol 2014 - Python, por onde começar?
Flisol 2014 - Python, por onde começar?Ramiro Luz
 
Python 3, patterns and indioms
Python 3, patterns and indiomsPython 3, patterns and indioms
Python 3, patterns and indiomsRamiro Luz
 
Dojo de Programação
Dojo de ProgramaçãoDojo de Programação
Dojo de ProgramaçãoRamiro Luz
 
Teaching TDD, the Coding Dojo Style
Teaching TDD, the Coding Dojo StyleTeaching TDD, the Coding Dojo Style
Teaching TDD, the Coding Dojo StyleRamiro Luz
 
Usando Dojos de Programação para o Ensino de TDD
Usando Dojos de Programação para o Ensino de TDDUsando Dojos de Programação para o Ensino de TDD
Usando Dojos de Programação para o Ensino de TDDRamiro Luz
 
Sabores do desenvolvimento web com Python
Sabores do desenvolvimento web com PythonSabores do desenvolvimento web com Python
Sabores do desenvolvimento web com PythonRamiro Luz
 
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...Ramiro Luz
 
Apresentação resumo de artigo Limiting Factor of TDD adoption
Apresentação resumo de artigo Limiting Factor of TDD adoptionApresentação resumo de artigo Limiting Factor of TDD adoption
Apresentação resumo de artigo Limiting Factor of TDD adoptionRamiro Luz
 
python-agil-IVEnGitec
python-agil-IVEnGitecpython-agil-IVEnGitec
python-agil-IVEnGitecRamiro Luz
 
Acessibilidade com Python
Acessibilidade com PythonAcessibilidade com Python
Acessibilidade com PythonRamiro Luz
 
Orca, Python e Acessibilidade
Orca, Python e AcessibilidadeOrca, Python e Acessibilidade
Orca, Python e AcessibilidadeRamiro Luz
 
Gerenciando projetos com Trac e SVN
Gerenciando projetos com Trac e SVNGerenciando projetos com Trac e SVN
Gerenciando projetos com Trac e SVNRamiro Luz
 
SQLAlchemy - A magia do mapeamento objeto relacional.
SQLAlchemy - A magia do mapeamento objeto relacional.SQLAlchemy - A magia do mapeamento objeto relacional.
SQLAlchemy - A magia do mapeamento objeto relacional.Ramiro Luz
 

Mais de Ramiro Luz (20)

Institutional Website - the longest project of my life
Institutional Website - the longest project of my lifeInstitutional Website - the longest project of my life
Institutional Website - the longest project of my life
 
Plone Portal, cultural and economic challenges in public organizations
Plone Portal, cultural and economic challenges in public organizationsPlone Portal, cultural and economic challenges in public organizations
Plone Portal, cultural and economic challenges in public organizations
 
Portal Modelo - Plone for Parliaments
Portal Modelo - Plone for ParliamentsPortal Modelo - Plone for Parliaments
Portal Modelo - Plone for Parliaments
 
Para que serve o Python
Para que serve o PythonPara que serve o Python
Para que serve o Python
 
Python, por onde começar? @FTSL2014
Python, por onde começar? @FTSL2014Python, por onde começar? @FTSL2014
Python, por onde começar? @FTSL2014
 
Flisol 2014 - Python, por onde começar?
Flisol 2014 - Python, por onde começar?Flisol 2014 - Python, por onde começar?
Flisol 2014 - Python, por onde começar?
 
Python 3, patterns and indioms
Python 3, patterns and indiomsPython 3, patterns and indioms
Python 3, patterns and indioms
 
Dojo de Programação
Dojo de ProgramaçãoDojo de Programação
Dojo de Programação
 
Teaching TDD, the Coding Dojo Style
Teaching TDD, the Coding Dojo StyleTeaching TDD, the Coding Dojo Style
Teaching TDD, the Coding Dojo Style
 
Usando Dojos de Programação para o Ensino de TDD
Usando Dojos de Programação para o Ensino de TDDUsando Dojos de Programação para o Ensino de TDD
Usando Dojos de Programação para o Ensino de TDD
 
Sabores do desenvolvimento web com Python
Sabores do desenvolvimento web com PythonSabores do desenvolvimento web com Python
Sabores do desenvolvimento web com Python
 
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...
Usando Dojos de Programação para o Ensino e Disseminação de Práticas Ágeis: r...
 
Apresentação resumo de artigo Limiting Factor of TDD adoption
Apresentação resumo de artigo Limiting Factor of TDD adoptionApresentação resumo de artigo Limiting Factor of TDD adoption
Apresentação resumo de artigo Limiting Factor of TDD adoption
 
python-agil-IVEnGitec
python-agil-IVEnGitecpython-agil-IVEnGitec
python-agil-IVEnGitec
 
Map reduce
Map reduceMap reduce
Map reduce
 
Nose tdaemon
Nose tdaemonNose tdaemon
Nose tdaemon
 
Acessibilidade com Python
Acessibilidade com PythonAcessibilidade com Python
Acessibilidade com Python
 
Orca, Python e Acessibilidade
Orca, Python e AcessibilidadeOrca, Python e Acessibilidade
Orca, Python e Acessibilidade
 
Gerenciando projetos com Trac e SVN
Gerenciando projetos com Trac e SVNGerenciando projetos com Trac e SVN
Gerenciando projetos com Trac e SVN
 
SQLAlchemy - A magia do mapeamento objeto relacional.
SQLAlchemy - A magia do mapeamento objeto relacional.SQLAlchemy - A magia do mapeamento objeto relacional.
SQLAlchemy - A magia do mapeamento objeto relacional.
 

Django Generic Views

  • 1. Não se repita - Django Generic Views. Ramiro Luz 26 de Abril de 2015 Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 1 / 13
  • 2. Sobre o autor Ramiro Batista da Luz, pós-graduado em Engenharia de Software pela UTFPR em mestrado prossional, ênfase em métodos ágeis. Programador, iniciou a carreira em 1996, organizador da PythonBrasil[6]. Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 2 / 13
  • 3. Sobre a palestra O que é Django? Conceitos básicos. Interface de administração. Visões. Generic views. Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 3 / 13
  • 4. O que é o Django? Framework de desenvolvimento web escrito em Python. Concebido para implementar aplicações rapidamente atendendo a demanda intensa de prazos de jornalismo da operação Web de um jornal chamado World Online. Recebeu o nome em homenagem à um guitarrista de jazz chamado Django Reinhardt. Possui três camadas separadas, Model, View e Template, que serão abordadas nos próximos slides. Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 4 / 13
  • 5. Conceitos básicos Para trabalhar com Django é iniciado um projeto. O projeto possui aplicações. A aplicação possui modelos (models), representando as tabelas do banco de dados. As visões (views), selecionam, ltram e preparam os dados representados pelo modelo e encaminham para os templates. E os templates utilizam os dados preparados pelas visões para apresentá-los. Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 5 / 13
  • 6. Django request/response http://rnevius.github.io/django_request_response_cycle.png Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 6 / 13
  • 7. Interface de administração Django automatiza a criação de interface administrativa para os modelos Permite que os administradores do site editem conteúdo. Não foi projetado para ser usado pelos visitantes do site. Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 7 / 13
  • 8. Visões (views) Equivale a uma página web dinâmica de uma aplicação. Geralmente serve a uma função especíca e está associada à um template. Cada view é representada por uma função ou método. As views são associadas a URLs através de um sistema de mapeamento de URL para uma função ou Classe. Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 8 / 13
  • 9. Generic Views São atalhos para tarefas comuns. Abstraem padrões comuns ao ponto de não ser necessário escrever código em Python para desenvolver uma aplicação. Basta congurar a URL, declarar a view, congurar o modelo e o template que devem ser usados. Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 9 / 13
  • 10. Demostração SHOW ME TE CODE. Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 10 / 13
  • 11. Contato @ramiroluz ramiroluz@gmail.com Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 11 / 13
  • 12. Agradecimentos OBRIGADO! Ramiro Luz Não se repita - Django Generic Views. 26 de Abril de 2015 12 / 13