Flask: o que é e como codar com esse micro framework Python
Fizemos um blog sobre o que é um microframework, mas para lembrá-lo:
Microframes são frameworks modulares com uma estrutura inicial muito mais simples em comparação com os frameworks tradicionais.
Pode-se dizer que o microframework é uma versão mínima desses frameworks e é amplamente utilizado para criar microsserviços como APIs RESTful.
No artigo anterior, comparamos objetos do mundo real para exemplificar como funcionam os microframeworks:
Pense em microframes como peças de Lego. Inicialmente, um projeto criado com um microframework tem apenas trabalho básico, (normalmente um sistema de roteamento), mas durante o projeto, outros recursos podem precisar ser utilizados, como conexões de banco de dados, templates, envio de e-mails, etc. As bibliotecas são “embutidas” no projeto, assim como uma estrutura Lego.
O que é o Flask?
Flask é um pequeno framework para criar aplicações web usando a linguagem Python.
Não se deixe enganar pelo prefixo “micro”, o Flask é poderoso em algumas extensões e é perfeito para quem procura:
Simples;
Rapidez;
Soluções para pequenos projetos;
Aplicativo poderoso.
O framework do Flask, lançado em 2010 e desenvolvido por Armin Ronacher, facilita o desenvolvimento de aplicações web.
Ronacher é conhecido por liderar uma comunidade de entusiastas do Python chamada Poocco. O Flask é baseado no kit de ferramentas Werkzeg WSGI e na biblioteca Jinja2. Ambos são designs tradicionais de Poocco.
WSGI
A Web Server Gateway Interface (WSGI) tem sido usada como padrão para o desenvolvimento de aplicações web em Python.
Simplificando, WSGI é uma especificação para uma interface comum entre servidores web e aplicativos.
Werkzeug
Werkzeug é uma das bases do Flask, um kit de ferramentas WSGI que implementa funções como requisições.
Jinja2
Jinja2 é um sistema de templates da web que combina templates com fontes de dados específicas para renderizar páginas da web.
Isso permite que você passe variáveis Python para templates HTML como este:
<html> <head> <title>{{ title }}</title> </head> <body> <h1>Hello {{ username }}</h1> </body> </html>
Características do Flask
Simplicidade: Por ter apenas o necessário para desenvolver uma aplicação, projetos escritos em Flask são mais simples em comparação com frameworks maiores, pois o número de arquivos é muito menor e sua arquitetura é muito mais simples.
Velocidade de desenvolvimento: Com o Flask, os desenvolvedores se preocupam apenas com o que precisam para desenvolver o projeto, sem precisar realizar configurações que normalmente não são utilizadas.
Projetos menores: Por ter uma arquitetura muito simples (arquivo inicial único), projetos escritos em Flask tendem a ser menores e mais leves em comparação com frameworks maiores.
Aplicativos robustos: Apesar de ser um micro-framework, o Flask permite a criação de aplicativos robustos por ser totalmente personalizável, permitindo a criação de arquiteturas mais definidas caso seja necessário.
Exemplo de uma aplicação Flask
Abaixo podemos ver um exemplo de uma aplicação em Flask. Podemos notar o quão simples criar uma aplicação web pode ser:
Copiar from flask import Flask app = Flask(__name__) @app.route("/") def index(): return 'Bem-vindo a TreinaWeb!' if __name__ == "__main__": app.run()
Nos podemos concluir que……
Flask é uma excelente escolha para desenvolver aplicativos em Python. Embora considerado um micro-framework, é o principal concorrente do Django.
Escreva seu primeiro código no Flask
Hora de sujar as mãos e ir!
Executando o código
Antes de podermos executar o código, precisamos exportar a variável FLASK_APP para informar ao Flask como carregar o aplicativo.
Aproveitaremos para ativar o modo debug exportando a variável FLASK_DEBUG, que atualiza nossa aplicação sempre que fizermos alguma alteração no código. Faremos isso com o seguinte comando:
export FLASK_APP=applicaiton.py export FLASK_DEBUG=1
Veja como fica:
código flask
Agora podemos executar nosso aplicativo com o seguinte comando
Funcionamento do frasco
Voilá:
Funcionamento do frasco
O último endereço de acesso é http://127.0.0.1:5000. Então terminamos nosso primeiro exemplo no Flask!
Se você fez isso e conseguiu ver os resultados no seu navegador, parabéns!
Agora você pode dizer “isso é fácil”, “Eu amo o Flask e quero aprender mais!”.
Vamos aprender mais sobre rotas e passar alguns parâmetros para elas!
Ao iniciarmos, vamos criar um novo projeto, a repetição ajudará você a lembrar da estrutura do projeto, portanto evite copiar e colar, digitar comandos e código novamente.
A primeira coisa a fazer é desabilitar o ambiente virtual, pois estaremos criando um novo. Use o comando:
deactivate
Confira como ficará:
Agora vamos criar um novo projeto no diretório flask, este exemplo será chamado de “routes0” para mostrar mais sobre o uso de rotas e como passar parâmetros para elas. Para fazer isso, precisamos voltar para um diretório, use o seguinte comando:
CD..
Neste ponto vou descrever os passos e manter os comandos usados, se você tiver alguma dúvida sobre como criar um projeto, volte ao primeiro exemplo para mais detalhes.
Criando a pasta do projeto mkdir rotas0 Acessando o diretório criado cd rotas0 Criando o ambiente virtual python3 -m venv venv Ativando o ambiente virtual source venv/bin/activate Atualizando o pip pip install --upgrade pip Instalando o Flask pip install flask
Agora é só criar o arquivo “application.py” que contém nosso código Flask.
Isso é suficiente para a primeira exposição ao Flask. Agora faça alguns testes e tente criar novas rotas e use parâmetros delas.
Qualquer dúvida, deixe seus comentários!