Resolvendo os seus problemas web com Flask

$whoami

  • Desenvolvedor python na VivaDecora
  • Entusiasta DevOps

O Flask é um microframework web feito em python

Armin Ronacher

Primeiro Release: 1 de abril de 2010

Motivação

  • Fácil de instalar
  • Fácil de prototipar
  • Simples

Motivação

Quem usa Flask ?

  • Netflix
  • Cloudify
  • Reddit
  • Vine
  • Patreon

http://stackshare.io/flask

O que significa ser micro?

Significa que só posso criar aplicações pequenas ?

Flask vs Full Stack Frameworks

Jinja2 (Template Engine)

 

ORM (Banco de Dados)

 

 

 

 

 

 

 Werkzeug( Utilitário WSGI)

Sistema de Cache

Autenticação

Admin

Flask

Outros frameworks

Flask Plugins

  • Flask Admin
  • Flask RESTFul
  • Flask login
  • Flask SQLAlchemy
  • Flask Cache

Instalação

pip install Flask

Começando

https://github.com/IuryAlves/flask_getting_started/tree/master/example_1

API de proximidade de palavras

https://github.com/IuryAlves/flask_getting_started/tree/master/example_2

  • Encontrar a palavra mais próxima de uma lista de palavras
  • Informar o quão próximo são duas palavras

Testes Unitários

https://github.com/IuryAlves/flask_getting_started/blob/master/example_2/tests.py

Salvando as consultas na API

pip install mongoengine

MongoEngine

ODM (Object Document Mapper)

Modela seus objetos em python para documentos no MongoDB

https://github.com/IuryAlves/flask_getting_started/tree/master/example_3

Organizando o Código

https://github.com/IuryAlves/flask_getting_started/tree/master/example_4

Configurações

https://github.com/IuryAlves/flask_getting_started/tree/master/example_5

Configurações

Além disso existem outras formas de se configurar o app

  • app.config.from_json
  • app.config.from_envvar
  • app.config.from_pyfile

Aplicações modulares com BluePrints

Blueprints são uma de organizar sua aplicação em componentes reutilizáveis

Aplicações modulares com BluePrints

https://github.com/IuryAlves/flask_getting_started/tree/master/example_6

E agora ?

  • Deploy (http://flask.pocoo.org/docs/0.11/deploying/uwsgi/)
  • Awesome Flask (https://github.com/humiaozuzu/awesome-flask)
  • Documentação Oficial (http://flask.pocoo.org/docs/0.11/)
  • Livro sobre Flask (https://flaskbook.com/)

Perguntas ?

Exemplos no Github (https://goo.gl/oXsPHm)

Resolvendo seus problemas web com Flask

By Iury Alves de Souza

Resolvendo seus problemas web com Flask

Github do projeto: https://goo.gl/oXsPHm

  • 525