O Que é Flask?
Flask é um micro-framework especializado em desenvolvimento de aplicações web e de APIs RESTful para a linguagem de programação Python. Ser um micro-framework significa que o Flask é uma estrutura mais simples e leve que Frameworks comuns, especificamente, o flask somente necessita de duas bibliotecas: a biblioteca Jinja
e a biblioteca Werkzeug
.
A biblioteca Jinja é uma ferramenta para modificação de templates que é usada em frameworks web de Python como o Django, em outras palavras, com Jinja conseguimos usar variáveis e expressões escritas em Python em arquivos HTML ou XML. Desse modo, você consegue usar linhas de código dentro de um arquivo estático como o HTML que depois são renderizadas e apresentadas juntos aos outros conteúdos do arquivo, tornando o conteúdo da nossa página algo dinâmico.
Já a biblioteca Werkzeug, é um conjunto de utilidades e aplicações de um WSGI (Web Server Gateway Interface - Interface de Gateway de Servidor Web), ou seja, essa biblioteca apresenta aplicações para as maneiras de comunicações de um servidor da Web com aplicativos da Web e como esses podem ser encadeados para processar uma solicitação. Em resumo, essa biblioteca controla as interações entre a internet e nossas aplicações em flask.
O Que Preciso Para Começar com o Flask?
Para começar com o Flask é indicável que você tenha conhecimento básico de Python, juntamente com conhecimento de HTML, CSS e JavaScript. Além de, obviamente, a instalação do Python e do Flask.
Dito isso, agora instalaremos o flask, como o framework é uma biblioteca python, precisamos instalar o python em nossa máquina antes de usar o flask. Quanto à instalação da biblioteca, usaremos um instalador de pacotes python, como pip
, e para realizar a instalação, digitaremos o seguinte comando em nosso terminal:
$ pip install Flask
Ao executar esse comando você estará instalando o Flask em toda sua máquina, mas é recomendado que não façamos isso e usemos um ambiente virtual como o Virtualenv
, mas para evitar quaisquer complicações utilizaremos esse caminho mais simples de instalação.
Criando Nosso "Olá Mundo!"
Primeiramente, temos que importar a classe Flask da biblioteca flask para o nosso programa:
# Primeiro precisamos importar a Classe Flask da biblioteca Flask que instalamos
from flask import Flask
Depois disso, precisaremos criar um objeto da classe Flask. No seu construtor geralmente usamos o termo __name__
, pois com tal termo o Flask saberá onde procurar arquivos HTML, CSS e outros facilmente.
# Agora criaremos um objeto da classe Flask
app = Flask(__name__)
O Flask funciona com um sistema interno de rotas, cada rota representa um endereço do nosso domínio. Imagine que o domínio da nossa página é olamundo.com.br
uma rota desse endereço pode ser /olaespecial
que se comporta se juntando ao domínio para representar outro local no nosso site, nesse caso, o local seria olamundo.com.br/olaespecial
.
Cada rota engatilha o funcionamento de uma função específica (a função localizada imediatamente abaixo da definição da rota) no nosso programa, essa função determinará o que será executado no nosso endereço a partir do seu retorno. Além disso, retorno dessa função é interpretado como HTML e rederizado como um.
Então, criaremos nossas duas primeiras rotas.
"""
Agora definiremos uma rota com o @app.route() o parâmetro dentro dos parênteses
representam um endereço da nossa rota.
Quando usamos somente '/' nos parênteses estamos especificando a rota principal
do nosso site, ou seja só estamos buscando a página referente ao domínio do site
"""
@app.route('/')
def ola_mundo():
return 'Ola Mundo!'
"""
Agora definiremos uma segunda rota com o @app.route() o parâmetro dentro dos
parênteses representam um endereço de nossa rota. Nesse caso, nossa rota
será dominio.com.br/lisandra
"""
@app.route('/lisandra')
def ola_lisandra():
# Retornaremos uma tag HTML nesse caso
return '<h1>Olá Lisandra!</h1>'
Agora temos nossa primeira aplicação web pronta para executá-la podemos realizar dois processos.
Primeiro Método de Executar Localmente o Flask
O primeiro método para execução do flash consiste em usar o comando flask
para executar seu programa, mas antes de utilizá-lo, você deverá dizer para as configurações do flask qual o nome do seu programa.
- Se você está no Linux, pode digitar o seguinte comando no seu terminal:
$ export FLASK_APP=<nomedoseuprograma>.py
- Se você está no Windows, digite no seu prompt de comando a seguinte linha de código:
C:\lugar\da\sua\aplicacao>set FLASK_APP=<nomedoseuprograma>.py
- Já se você estiver no power shell, digite:
PS C:\lugar\da\sua\aplicacao>$env:FLASK_APP = "<nomedoseuprograma>.py"
Depois disso, você pode executar o seguinte comando para executar seu programa.
flask run
Segundo Método
Outra maneira de executar sua aplicação é adicionando algumas linhas de código a sua aplicação. Primeiro, testaremos se estamos executando esse programa como um programa sozinho ou o importando, caso esteja sendo executado como um programa a variável __name__
recebe o valor de __main__
, caso seja importado, não.
Após isso, iremos usar o método run()
da classe Flask para executar o nosso programa.
"""
Agora determinaremos que desejamos executar nosso app, para isso usamos o app.run()
poderíamos somente escrever isso no final do nosso programa, mas fazemos um teste
antes esse teste verifica se nossa variável __name__ é igual a '__main__' quando
um arquivo.py é executado por sozinho como um programa, __name__ é definido
como '__main__' logo se executarmos o nosso programa iremos executar o app.run()
"""
if __name__ == "__main__":
app.run()
Depois, para executar seu programa escreva no seu terminal o seguinte comando.
python <nomedoseuprograma>.py
Execução
Ao executar o programa em qualquer uma das formas, você verá na sua tela algo como a seguinte saída.
* Serving Flask app "ola" (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
E agora se você acessar o endereço mostrado na sua saída você verá a seguinte saída:
Olá Mundo desenvolvido no programa apresentado no navegador
Já se você acessar nossa rota '/lisandra' no endereço http://127.0.0.1:5000/lisandra você verá a saída "Olá Lisandra!", pois foi o que pedimos no retorno da nossa função.
Print do retorno ao acessar a segunda rota criada
Perceba que o "Olá Lisandra!" está impresso como um elemento <h1>
, pois nosso retorno na função da rota /lisandra
é executado sempre como um conteúdo HTML, então quaisquer tags no retorno serão executadas.
Agora você pode ver seu primeiro site usando Flask em funcionamento!
O programa desenvolvido nesse tutorial está disponível no meu repositório do gitlab.
Top comments (0)