django: o framework web para perfeccionistas com prazos

100

Upload: francisco-souza

Post on 15-Jan-2015

1.324 views

Category:

Documents


0 download

DESCRIPTION

Apresentação de Django apresentada no II Liberdade Interativa, que aconteceu no dia 19 de agosto de 2010, na Faesa, Av. Vitória (Vitória, ES).

TRANSCRIPT

Page 1: Django: O Framework web para perfeccionistas com prazos
Page 2: Django: O Framework web para perfeccionistas com prazos

Desenvolvendo

Page 3: Django: O Framework web para perfeccionistas com prazos

Desenvolvendo

aplicações web

Page 4: Django: O Framework web para perfeccionistas com prazos

Desenvolvendo

aplicações webem tempo

Page 5: Django: O Framework web para perfeccionistas com prazos

Desenvolvendo

aplicações webem tempo

RECORDE.

Page 6: Django: O Framework web para perfeccionistas com prazos
Page 7: Django: O Framework web para perfeccionistas com prazos

35

Page 8: Django: O Framework web para perfeccionistas com prazos

30

Page 9: Django: O Framework web para perfeccionistas com prazos

20

Page 10: Django: O Framework web para perfeccionistas com prazos
Page 11: Django: O Framework web para perfeccionistas com prazos
Page 12: Django: O Framework web para perfeccionistas com prazos
Page 13: Django: O Framework web para perfeccionistas com prazos

10

Page 14: Django: O Framework web para perfeccionistas com prazos
Page 15: Django: O Framework web para perfeccionistas com prazos

O teclado mais rápido do Oeste.

Page 16: Django: O Framework web para perfeccionistas com prazos

O teclado mais rápido do Oeste.

#$%&*&@#@#

#@$%

Page 17: Django: O Framework web para perfeccionistas com prazos
Page 18: Django: O Framework web para perfeccionistas com prazos
Page 19: Django: O Framework web para perfeccionistas com prazos
Page 20: Django: O Framework web para perfeccionistas com prazos

DjangoO framework web para perfeccionistas com prazos

Page 21: Django: O Framework web para perfeccionistas com prazos

quem é você?

Page 22: Django: O Framework web para perfeccionistas com prazos

Welcome to the Django!

Page 23: Django: O Framework web para perfeccionistas com prazos
Page 24: Django: O Framework web para perfeccionistas com prazos
Page 25: Django: O Framework web para perfeccionistas com prazos
Page 26: Django: O Framework web para perfeccionistas com prazos
Page 27: Django: O Framework web para perfeccionistas com prazos
Page 28: Django: O Framework web para perfeccionistas com prazos
Page 29: Django: O Framework web para perfeccionistas com prazos

mas qual é a relação?

Page 30: Django: O Framework web para perfeccionistas com prazos

Magia

Page 31: Django: O Framework web para perfeccionistas com prazos
Page 32: Django: O Framework web para perfeccionistas com prazos
Page 33: Django: O Framework web para perfeccionistas com prazos
Page 34: Django: O Framework web para perfeccionistas com prazos

Abrindo a caixa

Page 35: Django: O Framework web para perfeccionistas com prazos

Orientado a aplicações

Page 36: Django: O Framework web para perfeccionistas com prazos
Page 37: Django: O Framework web para perfeccionistas com prazos
Page 38: Django: O Framework web para perfeccionistas com prazos

MVC?

Page 39: Django: O Framework web para perfeccionistas com prazos

MVC?+-

Page 40: Django: O Framework web para perfeccionistas com prazos
Page 41: Django: O Framework web para perfeccionistas com prazos
Page 42: Django: O Framework web para perfeccionistas com prazos

Cliente (browser)

URLTemplate

View

Model

Banco de dados

Page 43: Django: O Framework web para perfeccionistas com prazos

GET /livros

URLTemplate

View

Model

Banco de dados

Page 44: Django: O Framework web para perfeccionistas com prazos

GET /livros

Módulo de URLsTemplate

View

Model

Banco de dados

(r'^livros/$', 'views.listar_livros'),

Page 45: Django: O Framework web para perfeccionistas com prazos

GET /livros

Módulo de URLsTemplate

listar_livros(request)

Model

Banco de dados

def listar_livros(request): livros = Livro.objects.all() return render_to_response('livros.html', locals())

Page 46: Django: O Framework web para perfeccionistas com prazos

listar_livros(request)

GET /livros

Módulo de URLsTemplate

Model: classe Livro

Banco de dados

class Livro(Model): titulo = CharField(max_length = 100)

def listar_livros(request): livros = Livro.objects.all() return render_to_response('livros.html', locals())

Page 47: Django: O Framework web para perfeccionistas com prazos

Model: classe Livro

GET /livros

Módulo de URLsTemplate

Não importa (:

listar_livros(request)

def listar_livros(request): livros = Livro.objects.all() return render_to_response('livros.html', locals())

Page 48: Django: O Framework web para perfeccionistas com prazos

listar_livros(request)

Model: classe Livro

GET /livros

Módulo de URLslivros.html

def listar_livros(request): livros = Livro.objects.all() return render_to_response('livros.html', locals())

<ul> {% for livro in livros %} <li>{{ livro.titulo }}</li> {% endfor %}</ul>

Page 49: Django: O Framework web para perfeccionistas com prazos

livros.html

listar_livros(request)

Model: classe Livro

Módulo de URLs

GET /livros

Page 50: Django: O Framework web para perfeccionistas com prazos

Cliente (browser)

URL

Banco de dados

Template

View

Model

Page 51: Django: O Framework web para perfeccionistas com prazos

E mais...

Page 52: Django: O Framework web para perfeccionistas com prazos

E mais...

6 linhas de código Python.

Page 53: Django: O Framework web para perfeccionistas com prazos

E mais...

6 linhas de código Python.

5 linhas de html/template.

Page 54: Django: O Framework web para perfeccionistas com prazos

E mais...

6 linhas de código Python.

5 linhas de html/template.SQL?

Page 55: Django: O Framework web para perfeccionistas com prazos

Amazing!!!

Page 56: Django: O Framework web para perfeccionistas com prazos

Amazing!!!

Asombroso!!!

Surpreendente!!!

i18n

Page 57: Django: O Framework web para perfeccionistas com prazos

Autenticação

Page 58: Django: O Framework web para perfeccionistas com prazos

@login_requireddef listar_livros(request): livros = Livro.objects.all() return render_to_response('livros.html', locals())

Autenticação

Page 59: Django: O Framework web para perfeccionistas com prazos

Controle de permissão

Page 60: Django: O Framework web para perfeccionistas com prazos

Controle de permissão

@permission_required('livros.pode_listar')def listar_livros(request): livros = Livro.objects.all() return render_to_response('livros.html', locals())

Page 61: Django: O Framework web para perfeccionistas com prazos

Django Forms

Page 62: Django: O Framework web para perfeccionistas com prazos

Django Forms

class LivroForm(Form): titulo = CharField(max_length = 100)

Page 63: Django: O Framework web para perfeccionistas com prazos

Django Forms

class LivroForm(Form): titulo = CharField(max_length = 100)

class Livro(Model): titulo = CharField(max_length = 100)

Page 64: Django: O Framework web para perfeccionistas com prazos

Django Forms

class LivroForm(ModelForm): class Meta: model = Livro

Page 65: Django: O Framework web para perfeccionistas com prazos

Django Forms

class LivroForm(ModelForm): class Meta: model = Livro

class Livro(Model): titulo = CharField(max_length = 100) autor = CharField(max_length = 255) descricao = CharField(max_length = 1024)

Page 66: Django: O Framework web para perfeccionistas com prazos

Django Forms

class LivroForm(ModelForm): class Meta: model = Livro

class Livro(Model): titulo = CharField(max_length = 100) autor = CharField(max_length = 255) descricao = CharField(max_length = 1024)

Tem um desses pra Fórmula 1?

Page 67: Django: O Framework web para perfeccionistas com prazos

Django Forms

class LivroForm(ModelForm): class Meta: model = Livro

class Livro(Model): titulo = CharField(max_length = 100) autor = CharField(max_length = 255) descricao = CharField(max_length = 1024)

Tá de sacanagem?!

Tem um desses pra Fórmula 1?

Page 68: Django: O Framework web para perfeccionistas com prazos

L10n

class PessoaForm(Form): nome = CharField(max_length = 100) cpf = CPFField() telefone = BRPhoneField()

Page 69: Django: O Framework web para perfeccionistas com prazos

L10n

class PessoaForm(Form): nome = CharField(max_length = 100) cpf = CPFField() telefone = BRPhoneField()

Page 70: Django: O Framework web para perfeccionistas com prazos

1/2

Page 71: Django: O Framework web para perfeccionistas com prazos

2/2

Page 72: Django: O Framework web para perfeccionistas com prazos

Da pra fazer melhor?

Page 73: Django: O Framework web para perfeccionistas com prazos

Django admin

Page 74: Django: O Framework web para perfeccionistas com prazos

class Livro(Model): titulo = CharField(max_length = 100)

Page 75: Django: O Framework web para perfeccionistas com prazos

class Livro(Model): titulo = CharField(max_length = 100)

admin.site.register(Livro)

Page 76: Django: O Framework web para perfeccionistas com prazos

class Livro(Model): titulo = CharField(max_length = 100)

admin.site.register(Livro)

(r'^admin/', include(admin.site.urls)),

Page 77: Django: O Framework web para perfeccionistas com prazos

class Livro(Model): titulo = CharField(max_length = 100)

admin.site.register(Livro)

(r'^admin/', include(admin.site.urls)),

Resultado?

Page 78: Django: O Framework web para perfeccionistas com prazos
Page 79: Django: O Framework web para perfeccionistas com prazos
Page 80: Django: O Framework web para perfeccionistas com prazos
Page 81: Django: O Framework web para perfeccionistas com prazos
Page 82: Django: O Framework web para perfeccionistas com prazos
Page 83: Django: O Framework web para perfeccionistas com prazos
Page 84: Django: O Framework web para perfeccionistas com prazos
Page 85: Django: O Framework web para perfeccionistas com prazos

4

Page 86: Django: O Framework web para perfeccionistas com prazos

Merece a dancinha

Page 87: Django: O Framework web para perfeccionistas com prazos

Tem mais?

Page 88: Django: O Framework web para perfeccionistas com prazos

Tem mais?

PaginaçãoViews genéricasFeedsMensagensCSRFSignalsTestes automatizados[...]

Page 89: Django: O Framework web para perfeccionistas com prazos

Algumas considerações

Page 90: Django: O Framework web para perfeccionistas com prazos

Eu não sei Python

Page 91: Django: O Framework web para perfeccionistas com prazos

Onde e como hospedar?

Page 92: Django: O Framework web para perfeccionistas com prazos

E agora?

Page 93: Django: O Framework web para perfeccionistas com prazos

www.djangoproject.com

Page 94: Django: O Framework web para perfeccionistas com prazos

www.djangobrasil.org

Page 95: Django: O Framework web para perfeccionistas com prazos

www.aprendendodjango.com

Page 96: Django: O Framework web para perfeccionistas com prazos

www.djangosites.org

Page 97: Django: O Framework web para perfeccionistas com prazos

groups.google.com/group/django-brasil

Page 98: Django: O Framework web para perfeccionistas com prazos

www.djangovideos.com

Page 99: Django: O Framework web para perfeccionistas com prazos

?/∞

Page 100: Django: O Framework web para perfeccionistas com prazos

@[email protected]

DjangoO framework web para perfeccionistas com prazos