SlideShare ist ein Scribd-Unternehmen logo
1 von 39
Quem sou eu ?
Paola Katherine Pacheco
- Graduanda em Análise de Sistemas pela Unesa
- Ex-graduanda de Estatística na Uerj
- Apaixonada por números , viagens e chocolate
- Desenvolvedora Back End na Hadrons
- Membro do Django Girls Rio, Pyladies Rio
- GDG Organizer Rio de Janeiro
Python
Python é uma linguagem de programação criada por Guido van Rossum
em 1991. Os objetivos do projeto da linguagem eram: produtividade e
legibilidade. Em outras palavras, Python é uma linguagem que foi criada
para produzir código bom e fácil de manter de maneira rápida.
Instalando o Python :
http://tutorial.djangogirls.org/pt/python_installation/
Meu primeiro comando em Python
Para testar o Python, digite no seu terminal :
Python
Com isso seu terminal se tornará iterativo e poderá testar o código abaixo
com enter no final:
>>>2+3
5
>>>len("Ola")
3
Django
Django é um framework gratuito e de código aberto para a criação
de aplicações web, escrito em Python. É um framework web, ou seja,
é um conjunto de componentes que ajuda a desenvolver sites de
forma mais rápida e mais fácil.
Virtual Env Wrapper
Para facilitar, usaremos o Virtual Env Wrapper.
O Virtual Env é um ambiente virtual que fará com que todas as dependências do
projeto fiquem em um diretório só.
Para instalar digite o comando abaixo:
$ pip install virtualenvwrapper
(criar PastaDoProjeto)
E criaremos uma virtual env:
$ mkvirtualenv NomeDoProjeto
Instalando o Django
E agora sim instalaremos o Django:
$ pip install Django
*Sem definir a versão o pip sempre irá instalar a mais recente.
Começando seu projeto
$ django-admin startproject meuprojeto
Começando o seu projeto...
Precisamos alterar algumas configurações no settings.py
LANGUAGE_CODE="pt-BR"
TIME_ZONE='America/Sao_Paulo'
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
Banco de dados
O banco de dados que usaremos é o padrão sqLite3.
Executaremos apenas o comando: $ python manage.py migrate
Testando
$ python manage.py runserver
Git
Git é um sistema de controle de versão de arquivos. Através deles
podemos desenvolver projetos na qual diversas pessoas podem
contribuir simultaneamente no mesmo, editando e criando novos
arquivos e permitindo que os mesmos possam existir sem o risco de suas
alterações serem sobrescritas.
GitHub
O Github é um serviço web que oferece diversas funcionalidades extras
aplicadas ao git. Resumindo, você poderá usar gratuitamente o github para
hospedar seus projetos pessoais.
Além disso, quase todos os projetos/frameworks/bibliotecas sobre desenvolvimento
open source estão no github, e você pode acompanhá-los através de novas versões,
contribuir informando bugs ou até mesmo enviando código e correções.
GitHub
O que você precisa para começar a usar o GitHub:
- Ter uma conta no GitHub
- Autenticação via SSH pública ( para que você possa commitar )
http://tableless.com.br/tudo-que-voce-queria-saber-sobre-git-e-github-mas-tinha-
vergonha-de-perguntar/
https://git-scm.com/book/pt-br/v1/Git-no-Servidor-Gerando-Sua-Chave-
P%C3%BAblica-SSH
GitHub
GitHub
GitHub
$ echo "# hangout_teste">> README.md
$ git init
$ git add README.md
$ git commit -m "first commit"
$ git remote add origin git@github.com:PKpacheco/meu-portfolio.git
$ git push -u origin master
GitHub
GitHub
Crie um arquivo dentro do app principal chamado .gitignore
Coloque nele arquivos que serão ignorados pelo Git
**'Commite' novamente
Estrutura do Django
Model Url View Template Site
App Django
- Vamos criar um app diferente dentro do nosso projeto.
- $ python manage.py startapp portfolios
- Precisamos colocar o novo app dentro do settings.py
Modelos
class -> definição de objeto
DadosPessoais->nome do modelo ( que é um objeto)
models.Model -> modelo do Django que será salvo no banco. método/função
models.py
Modelos
Precisamos aplicar as alterações ao banco de dados:
$ python manage.py makemigrations
$ python manage.py migrate
Admin
$ python manage.py createsuperuser
$ python manage.py runserver
Admin O Django coloca um 's' no model informando plural!!
Cole esse código no seu model , assim você força seu
model a aceitar o nome no singular e no plural.
Url- Endereço da Web
Um pouco de Regex:
mysite/urls.py
Url
Criaremos o arquivo:
portfolios/urls.py
Próximo passo → Criar a View para portfolio_exibir
Views
Uma View pega informações do Model e exibe em um Template.
Nela temos a " lógica" de negócio, da sua aplicação.
portfolio/views.py
Temos um método def
Renderizando para portfolio_exibir.html
Executando python manage.py runserver
Templates
Criaremos uma pasta templates, dentro dela uma outra pasta portfolios e um
arquivo portfolio_exibir.html
portfolios>template>portfolios>portfolio_exibir.html
Templates Teste portfolio_exibir.html
python manage.py runserver
Git
Css
Criaremos um arquivo style.css dentro da pasta static em portfolios e dentro dela
outra pasta css.
portfolios>static>css>style.css
style.css
https://github.com/PKpacheco/meu-
portfolio/blob/master/portfolios/static/css/style.css
Alterações na View
Faremos algumas alterações em portfolios/views.py para facilitar nosso Html
Html
https://github.com/PKpacheco/meu-
portfolio/blob/master/portfolios/templates/portfolios/portfolio_exibir.html
Requirements.txt
Um requirements.txt guarda todas as dependências instaladas na sua aplicação.
Verifique todas as dependências com :
$pip freeze
Em seguida, crie o arquivo:
requirements.txt
Makefile
Um Makefile é um atalho para comandos.
Comunidades
Onde posso aprender?
Python:
- http://pycursos.com/python-para-zumbis/
- Code Academy
Django
- http://welcometothedjango.com.br/
- https://osantana.me/curso-de-python-e-django/
- tutorial.djangogirls.org
Obrigada
about.me/pkcpweb

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (13)

Django - A sua cápsula de soluções web em python
Django - A sua cápsula de soluções web em pythonDjango - A sua cápsula de soluções web em python
Django - A sua cápsula de soluções web em python
 
Python para programadores Ruby
Python para programadores RubyPython para programadores Ruby
Python para programadores Ruby
 
Por que jenkins se posso usar deployer php
Por que jenkins se posso usar deployer php Por que jenkins se posso usar deployer php
Por que jenkins se posso usar deployer php
 
Ferramentas para infraestrutura ágil
Ferramentas para infraestrutura ágilFerramentas para infraestrutura ágil
Ferramentas para infraestrutura ágil
 
Git & GitHub for beginners
Git & GitHub for beginnersGit & GitHub for beginners
Git & GitHub for beginners
 
(2016-08-13) [Grupy-SP] Plugin pytest-doctest-custom v1.0.0
(2016-08-13) [Grupy-SP] Plugin pytest-doctest-custom v1.0.0(2016-08-13) [Grupy-SP] Plugin pytest-doctest-custom v1.0.0
(2016-08-13) [Grupy-SP] Plugin pytest-doctest-custom v1.0.0
 
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 e Golang - Parte 1
Python e Golang - Parte 1Python e Golang - Parte 1
Python e Golang - Parte 1
 
(2015-03-14) [Grupy-SP] Projetos Open Source, como colaborar?
(2015-03-14) [Grupy-SP] Projetos Open Source, como colaborar?(2015-03-14) [Grupy-SP] Projetos Open Source, como colaborar?
(2015-03-14) [Grupy-SP] Projetos Open Source, como colaborar?
 
Infraestrutura como código com Puppet e Mcollective
Infraestrutura como código com Puppet e McollectiveInfraestrutura como código com Puppet e Mcollective
Infraestrutura como código com Puppet e Mcollective
 
TDC2016POA | Trilha Cloud Computing - Kubernetes para Desenvolvedores Docker
TDC2016POA | Trilha Cloud Computing - Kubernetes para Desenvolvedores DockerTDC2016POA | Trilha Cloud Computing - Kubernetes para Desenvolvedores Docker
TDC2016POA | Trilha Cloud Computing - Kubernetes para Desenvolvedores Docker
 
Capítulo 09 - Serviços em Background
Capítulo 09 - Serviços em BackgroundCapítulo 09 - Serviços em Background
Capítulo 09 - Serviços em Background
 
Bg, fg, jobs, nohup - controle de tarefas do shell
Bg, fg, jobs, nohup - controle de tarefas do shellBg, fg, jobs, nohup - controle de tarefas do shell
Bg, fg, jobs, nohup - controle de tarefas do shell
 

Ähnlich wie My first app django

Desenvolvimento web com python e django
Desenvolvimento web com python e djangoDesenvolvimento web com python e django
Desenvolvimento web com python e django
Igor Sobreira
 

Ähnlich wie My first app django (20)

Django Básico
Django BásicoDjango Básico
Django Básico
 
Mini curso introdutório ao Django
Mini curso introdutório ao DjangoMini curso introdutório ao Django
Mini curso introdutório ao Django
 
Desenvolvimento web com python e django
Desenvolvimento web com python e djangoDesenvolvimento web com python e django
Desenvolvimento web com python e django
 
Python 06
Python 06Python 06
Python 06
 
Django - Criando Aplicacoes Plugaveis
Django - Criando Aplicacoes PlugaveisDjango - Criando Aplicacoes Plugaveis
Django - Criando Aplicacoes Plugaveis
 
F R A M E W O R K D J A N G O
F R A M E W O R K  D J A N G OF R A M E W O R K  D J A N G O
F R A M E W O R K D J A N G O
 
Oficina de Django
Oficina de DjangoOficina de Django
Oficina de Django
 
Python 08
Python 08Python 08
Python 08
 
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação WebDjango Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
Django Módulo Básico Parte I - Desenvolvimento de uma aplicação Web
 
Django: Desenvolvendo uma aplicação web em minutos
Django: Desenvolvendo uma aplicação web em minutosDjango: Desenvolvendo uma aplicação web em minutos
Django: Desenvolvendo uma aplicação web em minutos
 
Apresentação de Django Extension
Apresentação de Django ExtensionApresentação de Django Extension
Apresentação de Django Extension
 
Mini curso de django
Mini curso de djangoMini curso de django
Mini curso de django
 
Google apps script - Parte - 1
Google apps script - Parte - 1Google apps script - Parte - 1
Google apps script - Parte - 1
 
Iniciando com django
Iniciando com djangoIniciando com django
Iniciando com django
 
Slide 02 introdução ao code igniter, utilização do bootstrap
Slide 02   introdução ao code igniter, utilização do bootstrap Slide 02   introdução ao code igniter, utilização do bootstrap
Slide 02 introdução ao code igniter, utilização do bootstrap
 
Técnicas para preparação e desenvolvimento de sites em django
Técnicas para preparação e desenvolvimento de sites em djangoTécnicas para preparação e desenvolvimento de sites em django
Técnicas para preparação e desenvolvimento de sites em django
 
Django
DjangoDjango
Django
 
CEPUG 2 - Bem-vindo a Framework CodeIgniter
CEPUG 2 - Bem-vindo a Framework CodeIgniterCEPUG 2 - Bem-vindo a Framework CodeIgniter
CEPUG 2 - Bem-vindo a Framework CodeIgniter
 
Canivete python
Canivete pythonCanivete python
Canivete python
 
Trabalho 4 Semestre e 5 Semestre 2015
Trabalho 4 Semestre e 5 Semestre 2015Trabalho 4 Semestre e 5 Semestre 2015
Trabalho 4 Semestre e 5 Semestre 2015
 

My first app django

  • 1.
  • 2. Quem sou eu ? Paola Katherine Pacheco - Graduanda em Análise de Sistemas pela Unesa - Ex-graduanda de Estatística na Uerj - Apaixonada por números , viagens e chocolate - Desenvolvedora Back End na Hadrons - Membro do Django Girls Rio, Pyladies Rio - GDG Organizer Rio de Janeiro
  • 3. Python Python é uma linguagem de programação criada por Guido van Rossum em 1991. Os objetivos do projeto da linguagem eram: produtividade e legibilidade. Em outras palavras, Python é uma linguagem que foi criada para produzir código bom e fácil de manter de maneira rápida. Instalando o Python : http://tutorial.djangogirls.org/pt/python_installation/
  • 4. Meu primeiro comando em Python Para testar o Python, digite no seu terminal : Python Com isso seu terminal se tornará iterativo e poderá testar o código abaixo com enter no final: >>>2+3 5 >>>len("Ola") 3
  • 5. Django Django é um framework gratuito e de código aberto para a criação de aplicações web, escrito em Python. É um framework web, ou seja, é um conjunto de componentes que ajuda a desenvolver sites de forma mais rápida e mais fácil.
  • 6. Virtual Env Wrapper Para facilitar, usaremos o Virtual Env Wrapper. O Virtual Env é um ambiente virtual que fará com que todas as dependências do projeto fiquem em um diretório só. Para instalar digite o comando abaixo: $ pip install virtualenvwrapper (criar PastaDoProjeto) E criaremos uma virtual env: $ mkvirtualenv NomeDoProjeto
  • 7. Instalando o Django E agora sim instalaremos o Django: $ pip install Django *Sem definir a versão o pip sempre irá instalar a mais recente.
  • 8. Começando seu projeto $ django-admin startproject meuprojeto
  • 9. Começando o seu projeto... Precisamos alterar algumas configurações no settings.py LANGUAGE_CODE="pt-BR" TIME_ZONE='America/Sao_Paulo' STATIC_URL = '/static/' STATIC_ROOT = os.path.join(BASE_DIR, 'static')
  • 10. Banco de dados O banco de dados que usaremos é o padrão sqLite3. Executaremos apenas o comando: $ python manage.py migrate
  • 12. Git Git é um sistema de controle de versão de arquivos. Através deles podemos desenvolver projetos na qual diversas pessoas podem contribuir simultaneamente no mesmo, editando e criando novos arquivos e permitindo que os mesmos possam existir sem o risco de suas alterações serem sobrescritas.
  • 13. GitHub O Github é um serviço web que oferece diversas funcionalidades extras aplicadas ao git. Resumindo, você poderá usar gratuitamente o github para hospedar seus projetos pessoais. Além disso, quase todos os projetos/frameworks/bibliotecas sobre desenvolvimento open source estão no github, e você pode acompanhá-los através de novas versões, contribuir informando bugs ou até mesmo enviando código e correções.
  • 14. GitHub O que você precisa para começar a usar o GitHub: - Ter uma conta no GitHub - Autenticação via SSH pública ( para que você possa commitar ) http://tableless.com.br/tudo-que-voce-queria-saber-sobre-git-e-github-mas-tinha- vergonha-de-perguntar/ https://git-scm.com/book/pt-br/v1/Git-no-Servidor-Gerando-Sua-Chave- P%C3%BAblica-SSH
  • 17. GitHub $ echo "# hangout_teste">> README.md $ git init $ git add README.md $ git commit -m "first commit" $ git remote add origin git@github.com:PKpacheco/meu-portfolio.git $ git push -u origin master
  • 19. GitHub Crie um arquivo dentro do app principal chamado .gitignore Coloque nele arquivos que serão ignorados pelo Git **'Commite' novamente
  • 20. Estrutura do Django Model Url View Template Site
  • 21. App Django - Vamos criar um app diferente dentro do nosso projeto. - $ python manage.py startapp portfolios - Precisamos colocar o novo app dentro do settings.py
  • 22. Modelos class -> definição de objeto DadosPessoais->nome do modelo ( que é um objeto) models.Model -> modelo do Django que será salvo no banco. método/função models.py
  • 23. Modelos Precisamos aplicar as alterações ao banco de dados: $ python manage.py makemigrations $ python manage.py migrate
  • 24. Admin $ python manage.py createsuperuser $ python manage.py runserver
  • 25. Admin O Django coloca um 's' no model informando plural!! Cole esse código no seu model , assim você força seu model a aceitar o nome no singular e no plural.
  • 26. Url- Endereço da Web Um pouco de Regex: mysite/urls.py
  • 27. Url Criaremos o arquivo: portfolios/urls.py Próximo passo → Criar a View para portfolio_exibir
  • 28. Views Uma View pega informações do Model e exibe em um Template. Nela temos a " lógica" de negócio, da sua aplicação. portfolio/views.py Temos um método def Renderizando para portfolio_exibir.html Executando python manage.py runserver
  • 29. Templates Criaremos uma pasta templates, dentro dela uma outra pasta portfolios e um arquivo portfolio_exibir.html portfolios>template>portfolios>portfolio_exibir.html
  • 31. Git
  • 32. Css Criaremos um arquivo style.css dentro da pasta static em portfolios e dentro dela outra pasta css. portfolios>static>css>style.css style.css https://github.com/PKpacheco/meu- portfolio/blob/master/portfolios/static/css/style.css
  • 33. Alterações na View Faremos algumas alterações em portfolios/views.py para facilitar nosso Html
  • 35. Requirements.txt Um requirements.txt guarda todas as dependências instaladas na sua aplicação. Verifique todas as dependências com : $pip freeze Em seguida, crie o arquivo: requirements.txt
  • 36. Makefile Um Makefile é um atalho para comandos.
  • 38. Onde posso aprender? Python: - http://pycursos.com/python-para-zumbis/ - Code Academy Django - http://welcometothedjango.com.br/ - https://osantana.me/curso-de-python-e-django/ - tutorial.djangogirls.org