PYTHON WEB AVANÇADO (DJANGO + FLASK)

Carga horária: 48hs

Objetivo:

O curso tem como objetivo capacitar o aluno para atuar desenvolvendo aplicações simples usando os frameworks de web Flask e Django. Durante o curso usaremos o SGBD postgresql para acesso a base de dados e o Ajax para acesso assíncrono a um servidor de aplicação com python.

Pré-requisito: Python para Web

Próximas turmas

Modulo 1 (16 h)

Django Framework

Django Authentication system

  • Criação de usuário
  • Criado de super user
  • Atributos do usuário
  • Username
  • Password
  • Email
  • First_name
  • Last_name
  • Autenticando usuário
  • Permissão e autorização
  • Autenticação de usuário
  • Sessões
  • Criando
  • Configurando
  • Tratamento de erros
  • Sessões na view
  • Criando controle de acesso
  • Roles
  • Cookies
  • Criando
  • Temporizando
  • Alterando
  • Invalidando um Cookies

Form

  • Criando um formulário html básico
  • GET e POST
  • Resgatando dados do form
  • Enviando dados para um formulário
  • Usando componentes html
  • Redirecionando de um form

 

 

 

 

 

Campos de um form

  • EmailField
  • Required
  • Label
  • Initial
  • DateField
  • Widget
  • Error_messages
  • Validators
  • Disable
  • Criando models com relacionamento
  • Enviando informação via ajax

 

 

 

 

 

 

 

 

 

 

PostgreSQL

  • Acessando o postgres
  • Via terminal
  • Via python e django
  • Configurando a persistência no manage.py
  • Relacionamento
  • Cardinalidade
  • Um para um
  • Um para muitos
  • Muito para muitos
  •  

 

 

 

 

 

 

 

 

URLS e HTTP

  • Configurando URLS
  • Enviando informações via urls
  • Recebendo informações via urls
  • Redirecionando
  • Criando urls (patterns)
  • Usando a classe url
  • HTTP Request, Response

 

 

 

 

 

 

 

Modulo 2 ( 20h)

Flask Framework

Instalação e configuração do ambiente virtual e flask

  • Ambiente virtual
  • Pip

Templates (jinja2)

  • Renderizando templates
  • Variáveis
  • Estrutura
  • Bootstrap
  • Pagina de erros customizados
  • Links
  • Static files
  • Datas e localização

Web forms

  • CSRF token
  • HTML forms
  • Redirecionamento
  • Sessões
  • Mensagens

Banco de dados

  • SQL
  • Python Database framework
  • Gerenciamento do banco de dados com flask SQLAlchemy
  • Definição de modelos
  • Relacionamentos
  • Tabelas
  • Controle de migração do banco com flask
  • Criando repositório
  • Criando script
  • Atualizando o banco

Email

  • Email suporte com flask
  • Enviando email
  • Integrando com a aplicação flask

Autenticação e permissão

  • Autenticação pelo flask
  • Password
  • Login
  • Rotas
  • Form
  • Autenticação de entrada
  • Autenticação de saída
  • Criação de registros
  • Criação e gerenciamento de token

API

  • Introdução ao REST
  • Métodos de recuperação de dados
  • RESTful Web Service com flask
  • Autenticação de usuário
  • Serialização dos dados em json
  • Criação dos endpoints
  • Paginação

Django Rest Framework

  • Instalação e configuração do django rest framework

Authorization

  • Token
  • Basic
  • Custom

Permissions

  • AlowAny
  • IsAuthenticated

 

Viewsets

  • GenericViewSet
  • ModelViewSet

 

Serializers

  • Serializer
  • ModelSerializer
  • Criação de rotas
  • Acessando a API via python client Requests
  • Acessando a API via linha de comando Httpie
  • Configurando o headers para acesso externo Django-cors-headers
  • Resgatando os dados
  • Acessando a API
  • Construção de uma API REST para acesso externo.
  • Acessando uma API REST em uma aplicação móbile.

 

Modulo 3 ( 12h)

Acessando APIS REST com flask e/ou django

Angular (web)

  • Criando uma aplicação angular como front-end
  • Acessando a aplicação a API
  • Efetuando o CRUD

Ionic (mobile)

  • Criando uma aplicação ionic
  • Acessando a API via ionic
  • Listando os dados no mobile.

React Native (mobile)

  • Criando uma aplicação React native
  • Acessando a API via React native
  • Listando os dados no mobile