Beruflich Dokumente
Kultur Dokumente
11 de Maio de 2010
Django focuses on automating as much as possible and adhering to the DRY principle.
Django Project - http://djangoproject.com
Django Reinhardt
Projetos e aplica co es
Sistemas em Django s ao divididos em projetos e aplica c oes
Projetos e aplica co es
Sistemas em Django s ao divididos em projetos e aplica c oes Um projeto pode conter v arias aplica c oes
Projetos e aplica co es
Sistemas em Django s ao divididos em projetos e aplica c oes Um projeto pode conter v arias aplica c oes Uma aplica c ao pode fazer parte de v arios projetos
Projetos e aplica co es
Sistemas em Django s ao divididos em projetos e aplica c oes Um projeto pode conter v arias aplica c oes Uma aplica c ao pode fazer parte de v arios projetos
Projetos e aplica co es
Sistemas em Django s ao divididos em projetos e aplica c oes Um projeto pode conter v arias aplica c oes Uma aplica c ao pode fazer parte de v arios projetos
O que e um projeto Django? Uma inst ancia de Django: congura c oes, aplica c oes, etc.
Projetos e aplica co es
Sistemas em Django s ao divididos em projetos e aplica c oes Um projeto pode conter v arias aplica c oes Uma aplica c ao pode fazer parte de v arios projetos
O que e um projeto Django? Uma inst ancia de Django: congura c oes, aplica c oes, etc.
O que e uma aplica c ao Django? Qualquer trecho de c odigo que possa ser reutilizado
Ent ao o Django me ajuda a ser menos repetitivo... Ok, como? O Django e um framework database-driven
Ent ao o Django me ajuda a ser menos repetitivo... Ok, como? O Django e um framework database-driven Voc e dene suas regras de neg ocio no modelo
Ent ao o Django me ajuda a ser menos repetitivo... Ok, como? O Django e um framework database-driven Voc e dene suas regras de neg ocio no modelo Camadas superiores herdam essas informa c oes
Ent ao o Django me ajuda a ser menos repetitivo... Ok, como? O Django e um framework database-driven Voc e dene suas regras de neg ocio no modelo Camadas superiores herdam essas informa c oes
Atributos
Ent ao o Django me ajuda a ser menos repetitivo... Ok, como? O Django e um framework database-driven Voc e dene suas regras de neg ocio no modelo Camadas superiores herdam essas informa c oes
Atributos Informa c oes
Ent ao o Django me ajuda a ser menos repetitivo... Ok, como? O Django e um framework database-driven Voc e dene suas regras de neg ocio no modelo Camadas superiores herdam essas informa c oes
Atributos Informa c oes Valida c oes
aplica c ao:
aplica c ao:
Template
{% extends " base . html " %} {% block title %} Pessoas {% endblock %} {% block body %} <a href = " {% url pessoa - insert %} " > Inserir </ a > < br / > < br / > {% for object in object_list %} <a href = " {{ object . get_absolute_url }} " > {{ object }} </ a > ( <a href = " {% url pessoa - update object . id %} " > Editar </ a > | <a href = " {% url pessoa - delete object . id %} " > Apagar </ a >) < br / > {% endfor %} {% endblock %} Arthur Furlan (afurlan) afurlan@afurlan.org Django para desenvolvimento web
Template
{% extends " base . html " %} {% block title %} Exibir pessoa {% endblock %} {% block body %} <b > Nome : </ b > {{ object . name }} < br / > <b > Email : </ b > {{ object . email }} < br / > < br / > <a href = " {% url pessoa - list %} " > Voltar </ a > {% endblock %}
Template: n ao tem
def pessoa_form ( request , object_id = None ): # carrega o objeto ( se houver ) e inicializa o formulario instance = ge t_ob jec t_o r_4 04 ( Pessoa , id = object_id ) if object_id else None form = PessoaForm ( instance = instance ) # valida e altera o objeto ( caso a validacao esteja OK ) if request . method == POST : form = PessoaForm ( request . POST , instance = instance ) if form . is_valid (): form . save () return H t t p R e s p o n s e R e d i r e c t ( reverse ( pessoa - list )) # envia novamente para o formulario return r e nd e r_ to _ re s po ns e ( pessoa_form . html , locals () , context_instance = RequestContext ( request ))
URLs da aplica c ao
1 2 3 4 5 6 7 8 9 10 11 12 from django . conf . urls . defaults import * urlpatterns = patterns ( catalogo . apps . contatos , url ( ^ $ , views . pessoa_list , name = pessoa - list ) , url ( ^ form / $ , views . pessoa_form , name = pessoa - insert ) , url ( ^ form /(? P < object_id >\ d +)/ $ , views . pessoa_form , name = pessoa - update ) , url ( ^ view /(? P < object_id >\ d +)/ $ , views . pessoa_view , name = pessoa - view ) , url ( ^ delete /(? P < object_id >\ d +)/ $ , views . pessoa_delete , name = pessoa - delete ) , )
list _dict_info = { queryset : Pessoa . objects . all () , template_name : pessoa_list . html } view _dict_info = { queryset : Pessoa . objects . all () , template_name : pessoa_view . html } i n s e r t _ d i ct_info = { model : Pessoa , po s t_ sa v e_ r ed ir e ct : / pessoa / , template_name : pessoa_form . html , } d e l e t e _ d i ct_info = { model : Pessoa , p o s t _ d e l e t e _ r e d i r e c t : / pessoa / } u p d a t e _ d i ct_info = insert_dict_info urlpatterns = patterns ( , url ( ^ $ , list_detail . object_list , list_dict_info , name = pessoa - list ) , url ( ^ form / $ , create_update . create_object , insert_dict_info , name = pessoa - insert ) , url ( ^ form /(? P < object_id >\ d +)/ $ , create_update . update_object , update_dict_info , name = pessoa - update ) , url ( ^ view /(? P < object_id >\ d +)/ $ , list_detail . object_detail , view_dict_info , name = pessoa - view ) , url ( ^ delete /(? P < object_id >\ d +)/ $ , create_update . delete_object , delete_dict_info , name = pessoa - delete ) , )
Telas da aplica c ao
Telas da aplica c ao
Telas da aplica c ao
Telas da aplica c ao
Telas da aplica c ao
Telas da aplica c ao
Telas da aplica c ao
Telas da aplica c ao
Fim
Obrigado! D uvidas?
http://www.slideshare.net/afurlan/django-para-desenvolvimento-web-porque-ser-repetitivo-chato http://tinyurl.com/afurlan-django