Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
D J A N G O
O F R A M E W O R K W E B
PA R A P E R F E C C I O N I S TA S
C O M P R A Z O
1
APRESENTAÇÃO
✓ EDCLEVISTON AMARAL (TEEH AMARAL)
✓ TÉCNICO EM REDES DE COMPUTADORES - IFAL
✓ GRADUANDO EM SISTEMAS DE INFOR...
O QUE É O DJANGO?
✓ FRAMEWORK WEB DA LINGUAGEM 'PYTHON'
✓ É LIVRE E OPEN SOURCE (CÓDIGO ABERTO)
✓ TEM FOCO NO DESENVOLVIME...
POR QUE DESENVOLVER COM DJANGO?
✓ AUXILIA NA UTILIZAÇÃO O CONCEITO DE REUSO DE
CÓDIGO
✓ AUXILIA NA MODULARIZAÇÃO DE SUAS A...
SUPORTE AOS BANCOS DE DADOS
✓ POSTGRES
✓ MYSQL
✓ SQLITE3
✓ ORACLE
5
PADRÃO DE ARQUITETURA DE SOFTWARE
✓ MVT:
✓ MODEL
✓ VIEW
✓ TEMPLATE
6
PADRÃO DE ARQUITETURA DE SOFTWARE
✓ MVT:
✓ MODEL
7
from django.db import models
class Noticia(models.Model):
titulo = mode...
PADRÃO DE ARQUITETURA DE SOFTWARE
✓ MVT:
✓ VIEW
8
from apps.noticia.models import Noticia
def noticias(request):
noticias ...
PADRÃO DE ARQUITETURA DE SOFTWARE
✓ MVT:
✓ VIEW
9
Seleção de dados com ORM Django:
Noticia.objects.filter(a=True).order_by...
PADRÃO DE ARQUITETURA DE SOFTWARE
✓ MVT:
✓ TEMPLATE
10
{% if noticias %}
<ul>
{% for noticia in noticias %}
<li>{{ noticia...
PADRÃO DE ARQUITETURA DE SOFTWARE
✓ REQUISIÇÃO DO MVT:
✓ ATRAVÉS DAS URLS
11
from django.conf.urls import patterns, url
ur...
PADRÃO DE ARQUITETURA DE SOFTWARE
✓ CAMINHO DA REQUISIÇÃO:
12
PASSOS PARA INICIAR UM PROJETO DJANGO

INSTALAÇÃO DO PYTHON E DO DJANGO EM HTTPS://
DOCS.DJANGOPROJECT.COM/EN/1.7/INTRO/IN...
MAS É SÓ? E O FAMOSO CRUD?
✓ CRUD:
✓ CREATE
✓ READ
✓ UPDATE
✓ DELETE
14
COMO FAÇO O PAINEL
ADMINISTRATIVO?
O DJANGO CRIA
AUTOMATICAMENTE O
PAINEL ADMINISTRATIVO COM
O MÓDULO DE USUÁRIOS E
GRUPOS DE USUÁRIOS
15
16
PAINEL ADMINISTRATIVO DO DJANGO
Página de Login
17
PAINEL ADMINISTRATIVO DO DJANGO
Listagem dos apps criados
18
PAINEL ADMINISTRATIVO DO DJANGO
Listagem dos registros
19
PAINEL ADMINISTRATIVO DO DJANGO
Página de adição/edição
20
COMO FAZER O PAINEL ADMINISTRADOR
DO DJANGO?
from django.contrib import admin
from apps.noticia.models import Noticia
c...
21
✓ GLOBO.COM
✓ INSTAGRAM - HTTP://INSTAGRAM.COM/
✓ PINTEREST - HTTP://PINTEREST.COM/
✓ AGENDA PALMEIRA - HTTP://AGENDAPA...
22
REFERÊNCIAS
✓ DJANGO: HTTPS://WWW.DJANGOPROJECT.COM
✓ DJANGO - DESENVOLVIMENTO WEB ÁGIL COM PYTHON - HTTP://
PT.SLIDESH...
23
OBRIGADO!
CONTATOS:
contato@teehamaral.me
fb.com/teehamaral92
teehamaral.me
Upcoming SlideShare
Loading in …5
×

Django - O framework web para perfeccionistas com prazo

229 views

Published on

Trabalho apresentado no FLISOL 2015 (25 de abril de 2015)

Published in: Technology
  • Be the first to comment

Django - O framework web para perfeccionistas com prazo

  1. 1. D J A N G O O F R A M E W O R K W E B PA R A P E R F E C C I O N I S TA S C O M P R A Z O 1
  2. 2. APRESENTAÇÃO ✓ EDCLEVISTON AMARAL (TEEH AMARAL) ✓ TÉCNICO EM REDES DE COMPUTADORES - IFAL ✓ GRADUANDO EM SISTEMAS DE INFORMAÇÃO - UFAL ✓ DESENVOLVEDOR WEB DESDE 2011 ✓ ATUALMENTE DESENVOLVEDOR NA AGÊNCIA NIC (AGENCIANIC.COM.BR) 2
  3. 3. O QUE É O DJANGO? ✓ FRAMEWORK WEB DA LINGUAGEM 'PYTHON' ✓ É LIVRE E OPEN SOURCE (CÓDIGO ABERTO) ✓ TEM FOCO NO DESENVOLVIMENTO ÁGIL E CÓDIGO LIMPO ✓ ADOTA O CONCEITO DRY (DON’T REPEAT YOURSELF - NÃO SE REPITA) 3
  4. 4. POR QUE DESENVOLVER COM DJANGO? ✓ AUXILIA NA UTILIZAÇÃO O CONCEITO DE REUSO DE CÓDIGO ✓ AUXILIA NA MODULARIZAÇÃO DE SUAS APLICAÇÕES ✓ CONSEQUENTEMENTE FACILITA A MANUTENÇÃO DO SEU CÓDIGO
 
 RESUMINDO: ✓ FACILITA O DESENVOLVIMENTO DE APLICAÇÕES WEB COM MAIS QUALIDADE E MENOS CÓDIGO. 4
  5. 5. SUPORTE AOS BANCOS DE DADOS ✓ POSTGRES ✓ MYSQL ✓ SQLITE3 ✓ ORACLE 5
  6. 6. PADRÃO DE ARQUITETURA DE SOFTWARE ✓ MVT: ✓ MODEL ✓ VIEW ✓ TEMPLATE 6
  7. 7. PADRÃO DE ARQUITETURA DE SOFTWARE ✓ MVT: ✓ MODEL 7 from django.db import models class Noticia(models.Model): titulo = models.CharField(verbose_name='Título', max_length=255, help_text='Insira um título para a notícia',) slug = models.SlugField(verbose_name='Slug', unique=True) noticia = models.TextField(verbose_name=‘Notícia’,) dtcad = models.DateTimeField(verbose_name=u'Data de cadastro', help_text=u'Data de cadastro', auto_now_add=True, editable=False) a = models.BooleanField(default=True, verbose_name='Ativa?', help_text='Ative a notícia para que esteja disponível no site’) def __str__(self): return self.titulo Exemplo
  8. 8. PADRÃO DE ARQUITETURA DE SOFTWARE ✓ MVT: ✓ VIEW 8 from apps.noticia.models import Noticia def noticias(request): noticias = Noticia.objects.filter(a=True).order_by('- dtcad') return render_to_response('noticias.html', RequestContext(request, { 'noticias': noticias, })) Exemplo
  9. 9. PADRÃO DE ARQUITETURA DE SOFTWARE ✓ MVT: ✓ VIEW 9 Seleção de dados com ORM Django: Noticia.objects.filter(a=True).order_by('-dtcad') = Selecionando dados com SQL: SELECT * FROM noticia WHERE a = true ORDER BY dtcad DESC;
  10. 10. PADRÃO DE ARQUITETURA DE SOFTWARE ✓ MVT: ✓ TEMPLATE 10 {% if noticias %} <ul> {% for noticia in noticias %} <li>{{ noticia.titulo }} - {{ noticia.dtcad }}</li> {% endfor %} </ul> {% else %} Notícias não cadastradas do momento. {% endif %} Exemplo
  11. 11. PADRÃO DE ARQUITETURA DE SOFTWARE ✓ REQUISIÇÃO DO MVT: ✓ ATRAVÉS DAS URLS 11 from django.conf.urls import patterns, url urlpatterns = patterns('', url(r'^noticias/$', 'views.noticias',name='site_noticias'), ) Exemplo
  12. 12. PADRÃO DE ARQUITETURA DE SOFTWARE ✓ CAMINHO DA REQUISIÇÃO: 12
  13. 13. PASSOS PARA INICIAR UM PROJETO DJANGO
 INSTALAÇÃO DO PYTHON E DO DJANGO EM HTTPS:// DOCS.DJANGOPROJECT.COM/EN/1.7/INTRO/INSTALL/ 13 ~ teehamaral$ django-admin startproject flisol2015 flisol2015 teehamaral$ python manage.py makemigrations flisol2015 teehamaral$ python manage.py migrate flisol2015 teehamaral$ python manage.py runserver apps teehamaral$ django-admin startapp noticia
  14. 14. MAS É SÓ? E O FAMOSO CRUD? ✓ CRUD: ✓ CREATE ✓ READ ✓ UPDATE ✓ DELETE 14 COMO FAÇO O PAINEL ADMINISTRATIVO?
  15. 15. O DJANGO CRIA AUTOMATICAMENTE O PAINEL ADMINISTRATIVO COM O MÓDULO DE USUÁRIOS E GRUPOS DE USUÁRIOS 15
  16. 16. 16 PAINEL ADMINISTRATIVO DO DJANGO Página de Login
  17. 17. 17 PAINEL ADMINISTRATIVO DO DJANGO Listagem dos apps criados
  18. 18. 18 PAINEL ADMINISTRATIVO DO DJANGO Listagem dos registros
  19. 19. 19 PAINEL ADMINISTRATIVO DO DJANGO Página de adição/edição
  20. 20. 20 COMO FAZER O PAINEL ADMINISTRADOR DO DJANGO? from django.contrib import admin from apps.noticia.models import Noticia class NoticiaAdmin(admin.ModelAdmin): list_display = ('titulo', 'a',) list_display_links = list_display list_filter = ('a', 'dtcad',) search_fields = ('titulo',) prepopulated_fields = {'slug': ('titulo',)} admin.site.register(Noticia, NoticiaAdmin) Exemplo
  21. 21. 21 ✓ GLOBO.COM ✓ INSTAGRAM - HTTP://INSTAGRAM.COM/ ✓ PINTEREST - HTTP://PINTEREST.COM/ ✓ AGENDA PALMEIRA - HTTP://AGENDAPALMEIRA.COM.BR/ ✓ SHOWS ARAPIRACA - HTTP://SHOWSARAPIRACA.COM.BR/ ALGUMAS EMPRESAS QUE UTILIZAM DJANGO
  22. 22. 22 REFERÊNCIAS ✓ DJANGO: HTTPS://WWW.DJANGOPROJECT.COM ✓ DJANGO - DESENVOLVIMENTO WEB ÁGIL COM PYTHON - HTTP:// PT.SLIDESHARE.NET/IGORSOBREIRA/DJANGO-DESENVOLVIMENTO-WEB- GIL-COM-PYTHON ✓ DJANGO WEBSITE EXAMPLES, WHICH SITES USE DJANGO WEB FRAMEWORK? - HTTP://CODECONDO.COM/POPULAR-WEBSITES-DJANGO/
  23. 23. 23 OBRIGADO! CONTATOS: contato@teehamaral.me fb.com/teehamaral92 teehamaral.me

×