SlideShare una empresa de Scribd logo
1 de 48
Python e Django
DESENVOLVIMENTO WEB

Youngling - Marcos Aurélio Melo Dias
marcos.a.melo.dias@gmail.com
http://www.python.org.br/
"Impressione-se, inicie."
Python
●
●
●
●
●
●

Multiplataforma
Multiparadigma
Tipagem dinâmica, mas forte
Boa curvar de aprendizagem
Comunidade forte
É divertido programar

=]
Python

http://www.toptal.com/python/por-que-h-tantos-pythons/pt
Zen do Python

$ python
>>> import this
Quem usa Python
●
●
●
●
●
●
●

Google
Governo Brasileiro
Globo
Lucasfilm
Dropbox
Nasa
Civilization IV

http://www.python.org/about/success/
Bibliotecas Python
Interface gráfica
●

Tkinter

●

PyQT

●

PySide

●

Mobile

Kivy

PyGTK

●

●

WxPython

●

●

Jogos
●

●

Pygame

Científico
●

SciPy

●

NumPy
Bibliotecas Python
●

Banco de Dados

●

Desenvolvimento WEB

●

PYRO

●

Zope e Plone

●

Tornado
CherryPy
TurboGears

●

●

Web2py

●

Sistemas Distribuídos

Flask

●

SqlAlchemy

●

●

●

Django

https://wiki.python.org/moin/UsefulModules
"Aprenda mais."
Django
●
●
●
●
●
●
●
●

Framework de desenvolvimento web ágil
Feito em Python
ORM próprio
Desenvolvimento dirigido a Testes (TDD)
Interface Administrativa
Internacionalização
Migração
Flexibilidade com banco de dados
Django

M
V
C

M
T
V
Preparando a infraestrutura

●

Python 3
sudo apt-get install python3 python3-doc
sudo apt-get install idle idle3
Preparando a infraestrutura

●

Install python-setuptools
sudo apt-get install python-setuptools
Preparando a infraestrutura
●

●

Install pip
sudo easy_install pip
Install Virtualenv
sudo pip install virtualenv
Preparando a infraestrutura
●

●

●

Criando o virtualenv
mkdir palestraSiteLEDS
Estando dentro de palestraSiteLEDS
virtualenv venv
Estando dentro de venv
source bin/activate
Preparando a infraestrutura

●

Para sair do virtualenv
deactivate
●

●

Instalação do Django
pip install django==1.6.2
Inciando um projeto django
django-admin.py startproject siteLEDS .
●

Preparar o banco de dados
python manage.py syncdb
Creating tables ...
Creating table django_admin_log
Creating table auth_permission
Creating table auth_group_permissions
Creating table auth_group
Creating table auth_user_groups
Creating table auth_user_user_permissions
Creating table auth_user
Creating table django_content_type
Creating table django_session
You just installed Django's auth system, which means you don't have any superusers defined.

yes
Username (leave blank to use 'marcosdias'): admin
Email address: email@email.com
Would you like to create one now? (yes/no):

Password:
Password (again):
Superuser created successfully.
Installing custom SQL ...
Installing indexes ...
Installed 0 object(s) from 0 fixture(s)
●

Executando a aplicação
python manage.py runserver
Validating models...
0 errors found
February 15, 2014 - 22:13:28
Django version 1.6.2, using settings 'siteLEDS.settings'
Starting development server at http://127.0.0.1:8000/
Quit the server with CONTROL-C.
●

Ver os templates originais...
●

Estando dentro da pasta siteLEDS, criar o primeiro
app. Mas primeiro chega de python manage.py
alias manage='python $VIRTUAL_ENV/manage.py'

●

Criando o app
manage startapp core
Adicionando o app ao settings.py

...
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'siteLEDS.core',
)
...
●

●

●

Estando dentro da pasta core
mkdir templates
Estando dentro da pasta core
mkdir -p static/{img,css,js}
Divida os arquivos em suas devidas pastas
Mapeando as urls, no url.py
Preparando a view.py no app Core
Templates
Próxima view
Templates
Código Fonte
https://github.com/MarcosDias/Palestra_Python_

Django
https://github.com/LEDS/Palestra_Python_Django
"Envolva-se."
Comunidade Python

●

PythonBrasil - http://pythonbrasil.org.br
●

https://groups.google.com/group/python-brasil
Comunidade Django
●

Django - http://www.djangobrasil.org/
●

●

https://groups.google.com/forum/#!
forum/django-brasil

Comunidade internacional
●

https://groups.google.com/forum/#!
forum/django-users
DÚVIDAS?

Más contenido relacionado

Similar a Introdução a Python e Django

Similar a Introdução a Python e Django (20)

Canivete python
Canivete pythonCanivete python
Canivete python
 
My first app django
My first app djangoMy first app django
My first app django
 
Secomp 2018 - DO Ruby ao Elixir
Secomp 2018 - DO Ruby ao ElixirSecomp 2018 - DO Ruby ao Elixir
Secomp 2018 - DO Ruby ao Elixir
 
Aula 9 - Introdução ao Python
Aula 9 - Introdução ao PythonAula 9 - Introdução ao Python
Aula 9 - Introdução ao Python
 
Django - Muito além do básico
Django - Muito além do básicoDjango - Muito além do básico
Django - Muito além do básico
 
Python 06
Python 06Python 06
Python 06
 
Hackaton
HackatonHackaton
Hackaton
 
Apresentacao sfd-poa
Apresentacao sfd-poaApresentacao sfd-poa
Apresentacao sfd-poa
 
Introdução a linguagem Python: simples e produtiva
Introdução a linguagem Python: simples e produtivaIntrodução a linguagem Python: simples e produtiva
Introdução a linguagem Python: simples e produtiva
 
Django
DjangoDjango
Django
 
Tutorial Django + Python
Tutorial Django + PythonTutorial Django + Python
Tutorial Django + Python
 
Spring boot
Spring bootSpring boot
Spring boot
 
Hello, Python!
Hello, Python!Hello, Python!
Hello, Python!
 
Django Básico
Django BásicoDjango Básico
Django Básico
 
Introdução a linguagem Python
Introdução a linguagem PythonIntrodução a linguagem Python
Introdução a linguagem Python
 
Arduino + Python: produtividade ao extremo
Arduino + Python: produtividade ao extremoArduino + Python: produtividade ao extremo
Arduino + Python: produtividade ao extremo
 
Desenvolvimento Web Ágil com Python e Django
Desenvolvimento Web Ágil com Python e DjangoDesenvolvimento Web Ágil com Python e Django
Desenvolvimento Web Ágil com Python e Django
 
OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)OpenDevice IoT - 2016 (LowLevel)
OpenDevice IoT - 2016 (LowLevel)
 
Django - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com PythonDjango - Desenvolvimento web ágil com Python
Django - Desenvolvimento web ágil com Python
 
5 Motivos para usar o Google App Engine
5 Motivos para usar o Google App Engine5 Motivos para usar o Google App Engine
5 Motivos para usar o Google App Engine
 

Más de ledsifes

Sincap um exemplo prático de colaboração entre Academia e Sociedade
Sincap um exemplo prático de colaboração entre Academia e SociedadeSincap um exemplo prático de colaboração entre Academia e Sociedade
Sincap um exemplo prático de colaboração entre Academia e Sociedadeledsifes
 
Spring roo - Criando aplicações Java Web em poucos minutos
Spring roo - Criando aplicações Java Web em poucos minutosSpring roo - Criando aplicações Java Web em poucos minutos
Spring roo - Criando aplicações Java Web em poucos minutosledsifes
 
Apresentação HTML e CSS
Apresentação HTML e CSSApresentação HTML e CSS
Apresentação HTML e CSSledsifes
 
Leds zeppellin infraestrutura de apoio ao desenvolvimento
Leds zeppellin   infraestrutura de apoio ao desenvolvimentoLeds zeppellin   infraestrutura de apoio ao desenvolvimento
Leds zeppellin infraestrutura de apoio ao desenvolvimentoledsifes
 
Introdução à SQL Injection
Introdução à SQL InjectionIntrodução à SQL Injection
Introdução à SQL Injectionledsifes
 
Palestra de PHP
Palestra de PHPPalestra de PHP
Palestra de PHPledsifes
 
Introdução à Servlets e JSP
Introdução à Servlets e JSPIntrodução à Servlets e JSP
Introdução à Servlets e JSPledsifes
 

Más de ledsifes (7)

Sincap um exemplo prático de colaboração entre Academia e Sociedade
Sincap um exemplo prático de colaboração entre Academia e SociedadeSincap um exemplo prático de colaboração entre Academia e Sociedade
Sincap um exemplo prático de colaboração entre Academia e Sociedade
 
Spring roo - Criando aplicações Java Web em poucos minutos
Spring roo - Criando aplicações Java Web em poucos minutosSpring roo - Criando aplicações Java Web em poucos minutos
Spring roo - Criando aplicações Java Web em poucos minutos
 
Apresentação HTML e CSS
Apresentação HTML e CSSApresentação HTML e CSS
Apresentação HTML e CSS
 
Leds zeppellin infraestrutura de apoio ao desenvolvimento
Leds zeppellin   infraestrutura de apoio ao desenvolvimentoLeds zeppellin   infraestrutura de apoio ao desenvolvimento
Leds zeppellin infraestrutura de apoio ao desenvolvimento
 
Introdução à SQL Injection
Introdução à SQL InjectionIntrodução à SQL Injection
Introdução à SQL Injection
 
Palestra de PHP
Palestra de PHPPalestra de PHP
Palestra de PHP
 
Introdução à Servlets e JSP
Introdução à Servlets e JSPIntrodução à Servlets e JSP
Introdução à Servlets e JSP
 

Introdução a Python e Django