Próximas Turmas
Nenhuma turma disponível no momento
Entre em contato para informar seu interesseO que você vai aprender nesse curso
O curso de Python Web avançado é o complemento do curso de Python web é tem como objetivo reiterar os conteúdos ministrados no primeiro e aumentar o nível de especificidade dele.
Nessa parte do curso focaremos em aprender o Django Rest Framework, Flask Api e outras tecnologias com maior foco nos componentes.
Na parte final focaremos nossos esforços nas classes de aplicações REST para disponibilizar serviços em python que possam ser acessados por outras tecnologias. Os serviços serão criados usando o flask api e o django rest framework e as tecnologias de frontend que usaremos será o angular e o flutter mobile.
Conteúdo do curso
- Modulo 1 (20 h)
- Flask Framework
- Instalação e configuração do ambiente virtual e flask
- Ambiente virtual
- Pip
- Templates (jinja2)
- Renderizando templates
- Variáveis
- Estrutura
- Bootstrap
- Página 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 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
- Modulo 2 APIS (24 h)
- FLASK
- Conceito
- API
- REST HTTP
- URIs baseadas em recursos
- Métodos HTTP e CRUD
- API REST COM BANCO DE DADOS
- Criação do banco de dados
- Usando o SQLAlChemy
- Usando POST
- Usando GET
- Usando PUT
- Usando DELETE
- Tratamento de erros nos métodos do resources
- Adicionando autenticação com JWT
- Classe de usuário
- Implementando os métodos GET e DELETE
- Implementando o cadastro
- Implementando o login
- Testando o login de usuário
- Aplicando Filtros para consultas
- Recebendo dados via Path
- Normalizando dados para consultas
- Criando uma consulta parametrizada
- Retornando de um dicionário
- Configurando o envio de email
- Criando o link para confirmação de email
- Confirmação de usuário cadastrado
- Testando confirmação
- Cadastrando e configurando o mailgun
- Formando o link de confirmação de email
- Implementando a função de envio de email
- Configurando os recursos para envio de email de confirmação
- Testando o envio de email
- Construindo uma página HTML de resposta
- Deploy
- PythonAnyWhere
- Criando conta
- Configurando banco de dados
- MySQL
- Fazendo upload da aplicação
- Ajustes finais do deploy
- Heroku
- Criando uma conta
- Configurando o banco de dados
- Instalando o cliente do heroku
- Configurando credencias do banco
- Configurando procfile, requeriments.txt e runtime.txt
- 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 Consumindo APIS (12 h)
- Angular
- Acessando API com HTTP Request
- Definindo rotas
- Criando as classes de serviços
- Criando componentes
- Criando modais
- Definindo os dados da aplicação
- Criação do DTO
- Definindo tela de cadastro
- Definindo tela de lista
- Cadastrando e listando objetos
- Flutter(mobile)
- Criando as classes de serviços
- Construindo os widgets da tela de cadastro
- Construindo os widgets da tela de listagem
- Criando o objeto de representação dos dados
- Acessando o serviço
- Cadastrando um objeto na API
- Retornando a lista de objetos do API