39
Explorando o Marcel P. Caraciolo @marcelcaraciolo Residência RISE - 2011 Friday, May 27, 2011

Explorando Django

Embed Size (px)

DESCRIPTION

Apresentação realizada por mim para o Curso de Residência de Reuso da RISE em Recife 27.05.2011 sobre Django.Apresentações sobre Pinax, Django-Piston e Django Registration

Citation preview

Page 1: Explorando Django

Explorando o

Marcel P. Caraciolo@marcelcaraciolo

Residência RISE - 2011

Friday, May 27, 2011

Page 2: Explorando Django

Esta palestra está sobre a licença Creative Commons

Residência de Reuso - 2011.1 - Recife/PE

ou seja distribuir , modificar e copiar tudo liberado :D

mas sempre cite a original nos seus créditos

http://creativecommons.org/licenses/by-sa/3.0/

Esta aula faz parte do curso de Residência de Reuso de Software pela RISE

Friday, May 27, 2011

Page 3: Explorando Django

Como é fácil instalar uma app com Django!

Residência de Reuso - 2011.1 - Recife/PE

Friday, May 27, 2011

Page 4: Explorando Django

Django-registration

Django tem um sistema de controle de acesso mas faltam algumas funcionalidades interessantes:

Don’t Repeat yourself!!

Residência de Reuso - 2011.1 - Recife/PE

* Envio de E-mails

* Controle de Acesso Rápido

https://bitbucket.org/ubernostrum/django-registration/wiki/Home

Friday, May 27, 2011

Page 5: Explorando Django

Django-registration

Instalando o Django-Registration

Residência de Reuso - 2011.1 - Recife/PE

1. Baixe o django-registration

https://bitbucket.org/ubernostrum/django-registration/wiki/Home

Friday, May 27, 2011

Page 6: Explorando Django

Django-registration

Instalando o Django-Registration

Residência de Reuso - 2011.1 - Recife/PE

2. Copie a pasta registration para sua aplicação

Friday, May 27, 2011

Page 7: Explorando Django

Django-registration

Instalando o Django-Registration

Residência de Reuso - 2011.1 - Recife/PE

3. Registre no settings.py a nova app

Friday, May 27, 2011

Page 8: Explorando Django

Django-registration

Instalando o Django-Registration

Residência de Reuso - 2011.1 - Recife/PE

3. Adicione no settings.py a configuração

Friday, May 27, 2011

Page 9: Explorando Django

Django-registration

Instalando o Django-Registration

Residência de Reuso - 2011.1 - Recife/PE

4. Adicione os novos modelos no banco

python manage.py syncdb

Friday, May 27, 2011

Page 10: Explorando Django

Django-registration

Instalando o Django-Registration

Residência de Reuso - 2011.1 - Recife/PE

5. Atualize as urls.py

Friday, May 27, 2011

Page 11: Explorando Django

Django-registration

Instalando o Django-Registration

Residência de Reuso - 2011.1 - Recife/PE

6. Adicione os templates (pasta registration)

login.html — user login form

logout.html — shown after a user has logged out

password_change_form.html — password change form

password_change_done.html — shown after successful password change

password_reset_form.html — ask user for email to send password-reset mail to

password_reset_email.html — template for password-reset mail

password_reset_done.html — shown after password-reset email has been sent

password_reset_confirm.html — ask user for new password after reset

password_reset_complete.html — shown after successful password reset

http://www.junkdrome.com/registration-templates.tar.gz

Friday, May 27, 2011

Page 12: Explorando Django

Django-registration

Instalando o Django-Registration

Residência de Reuso - 2011.1 - Recife/PE

7. Altere o dominio do site via admin

Os e-mails por padrão vem com chave para example.com

Friday, May 27, 2011

Page 13: Explorando Django

Django-registration

Instalando o Django-Registration

Residência de Reuso - 2011.1 - Recife/PE

8. Teste com seu próprio servidor de e-mails (Gmail)

Adicione no settings.py

EMAIL_HOST = "smtp.gmail.com"EMAIL_HOST_USER = '[email protected]'EMAIL_HOST_PASSWORD = "password"EMAIL_PORT = 587EMAIL_USE_TLS = True

Friday, May 27, 2011

Page 14: Explorando Django

Residência de Reuso - 2011.1 - Recife/PE

Conhecendo os poderes do Pinax

Friday, May 27, 2011

Page 15: Explorando Django

Pinax é Django, logo é Python!

Framework para construção de redes sociais

Construção rápida de wikis, intranets, fórums, etc

Residência de Reuso - 2011.1 - Recife/PE

Suporte para autenticação, forums, badges, friendships, profiles, blogs ,wiki....

App Django e Gratuito!

http://pinaxproject.com/

Friday, May 27, 2011

Page 16: Explorando Django

Conhecendo o Pinax

Residência de Reuso - 2011.1 - Recife/PE

Instalando o pinax

pip install pinax

http://pinaxproject.com/downloads/

ou

Friday, May 27, 2011

Page 17: Explorando Django

Conhecendo o Pinax

Residência de Reuso - 2011.1 - Recife/PE

Após instalado

$ cd Pinax-bundle ...

$ python scripts/pinax-boot.py ../pinax-env

$ source ../pinax-env/bin/activate

$ ..\pinax-env\Scripts\activate.bat (Windows)

Friday, May 27, 2011

Page 18: Explorando Django

Conhecendo Pinax

Residência de Reuso - 2011.1 - Recife/PE

Criando sua primeira rede social

$ pinax-admin clone_project -l

$ pinax-admin clone_project social_project mysite

(pinax-env)$ cd mysite/(pinax-env)$ python manage.py syncdb(pinax-env)$ python manage.py runserver

Friday, May 27, 2011

Page 19: Explorando Django

Conhecendo Pinax

Residência de Reuso - 2011.1 - Recife/PE

Criando sua primeira rede social

Friday, May 27, 2011

Page 20: Explorando Django

Conhecendo Pinax

Residência de Reuso - 2011.1 - Recife/PE

Fazendo o sign-up

Friday, May 27, 2011

Page 21: Explorando Django

Conhecendo Pinax

Residência de Reuso - 2011.1 - Recife/PE

Fazendo o sign-up

Friday, May 27, 2011

Page 22: Explorando Django

Conhecendo Pinax

Residência de Reuso - 2011.1 - Recife/PE

Recomendo o tutorial!

http://www.slideshare.net/pydanny/pinax-long-tutorial-slides

Friday, May 27, 2011

Page 23: Explorando Django

Quero construir uma API para minha aplicação , Django oferece?

Residência de Reuso - 2011.1 - Recife/PE

Friday, May 27, 2011

Page 24: Explorando Django

Residência de Reuso - 2011.1 - Recife/PE

Quero construir uma API para minha aplicação , Django oferece?

Friday, May 27, 2011

Page 25: Explorando Django

Django-Piston

Construção de RESTful APIs On The Go!

Usa mecanismo do Django

Residência de Reuso - 2011.1 - Recife/PE

Suporte ao OAuth assim como Basic/Digest Auth.

Conversa em JSON, YAML, XML, etc.

https://bitbucket.org/jespern/django-piston/wiki/Home

Respeita e encoraja o uso de HTTP statuses codes

Friday, May 27, 2011

Page 26: Explorando Django

Django-Piston

Residência de Reuso - 2011.1 - Recife/PEREST

Roatan Beach - Perfect Day, by Janusz Leszczynski

Friday, May 27, 2011

Page 27: Explorando Django

Django-Piston

Residência de Reuso - 2011.1 - Recife/PE

HTTP Interface

#110 Hypertext Transfer Protocol, by maako

Methods

GET

PUT

POST

DELETE

Cut & Paste

Copy

Paste Over

Paste After

Cut

Friday, May 27, 2011

Page 28: Explorando Django

Django-registration

Construindo uma API Simples

Residência de Reuso - 2011.1 - Recife/PE

Consulta de Dados de Informações sobre cidades

1. Consulta por Estados

2. Consulta de Cidades de um Estado

Friday, May 27, 2011

Page 29: Explorando Django

Django-registration

Construindo uma API Simples

Residência de Reuso - 2011.1 - Recife/PE

1.Criando o Projeto ibge_project

$ django-admin.py startproject ibge_portal$ cd ibge_portal$ django-admin.py startapp ibge_cidades

Friday, May 27, 2011

Page 30: Explorando Django

Django-registration

Construindo uma API Simples

Residência de Reuso - 2011.1 - Recife/PE

2. Criando o Models.py

Friday, May 27, 2011

Page 31: Explorando Django

Django-registration

Construindo uma API Simples

Residência de Reuso - 2011.1 - Recife/PE

3. Populando o Banco

Friday, May 27, 2011

Page 32: Explorando Django

Django-registration

Construindo uma API Simples

Residência de Reuso - 2011.1 - Recife/PE

4. Criando nossa API$ mkdir api

$ touch api/__init__.py

$ touch api/urls.py

$ touch api/handlers.py

Friday, May 27, 2011

Page 33: Explorando Django

Django-registration

Construindo uma API Simples

Residência de Reuso - 2011.1 - Recife/PE

5. Criando os Handlers (Manipuladores)

handlers.py

Friday, May 27, 2011

Page 34: Explorando Django

Django-registration

Construindo uma API Simples

Residência de Reuso - 2011.1 - Recife/PE

6.Implementando os Handlers

handlers.py

Friday, May 27, 2011

Page 35: Explorando Django

Django-registration

Construindo uma API Simples

Residência de Reuso - 2011.1 - Recife/PE

7. Estamos quase lá!

■ GET /api/estados: Retorna a lista de todos estados;

■ GET /api/cidades/<sigla>: Retorna a lista de todas as cidades do estado identificado por <sigla>.

Friday, May 27, 2011

Page 36: Explorando Django

Django-registration

Construindo uma API Simples

Residência de Reuso - 2011.1 - Recife/PE

8. Definindo as urls.py (raiz)

9. Definindo as urls.py (app)

Friday, May 27, 2011

Page 37: Explorando Django

Django-registration

Agora é só consumir!!

Residência de Reuso - 2011.1 - Recife/PE

Friday, May 27, 2011

Page 39: Explorando Django

Explorando

Marcel P. [email protected]

Residência RISE - 2011

Friday, May 27, 2011