Vamos iniciar o nosso projeto, que será um site chamado Jogoteca. Esta aplicação exibirá uma lista de jogos, incluindo o nome do jogo, a plataforma e o console aos quais o jogo pertence. Além disso, permitirá o cadastro de novos jogos e de login. O acesso às páginas de lista de jogos e de criação de um novo jogo será restrito apenas às pessoas com login.
Porém, antes de começarmos, é importante relembrarmos como funciona a web, especialmente no que diz respeito ao Protocolo HTTP. O processo é o seguinte: temos um navegador e, na barra de endereço do navegador, inserimos o endereço do site.
O servidor, onde estão as informações do site, recebe uma requisição do nosso navegador para liberar as informações sobre o site e conceder acesso. O servidor responde com uma Response e, então, temos acesso ao site.
Criando uma aplicação
No nosso caso, o Flask, desempenhará o papel do servidor. Portanto, momentaneamente, este framework será o nosso servidor. Vamos, então, iniciar o nosso projeto. Para isso, usaremos a IDE PyCharm.
Após criar um novo projeto no PyCharm, na aba "Projects", selecionaremos "New Project". Na próxima tela, em "Location", substituiremos o final do link, "pythonProject", por "jogoteca". Ficará: "/home/bruno/PycharmProjects/jogoteca". Por fim, apertaremos "Create".
O ambiente virtual está sendo criado e disponibiliza automaticamente o arquivo main.py fornecido automaticamente, porém, criaremos o nosso próprio arquivo. Portanto, podemos selecioná-lo e apertar "Delete" para apagá-lo. Em seguida, vamos criar um novo arquivo .py, onde ficará nosso projeto.
Então, clicaremos na pasta do projeto e selecionaremos "New > Python Package". Na próxima tela, definiremos o nome: "jogoteca". Assim, criamos o arquivo jogoteca.py. Neste arquivo, passaremos:
A primeira menção à palavra flask refere-se à biblioteca, enquanto com a segunda, estamos importando a função Flask, que nos permitirá criar a aplicação. Como o Flask não é uma biblioteca embutida do Python, precisamos fazer o download.
Para isso, precisamos abrir o terminal, na parte inferior da tela, ou utilizar o atalho "Alt + F12". Vamos usar o instalador pip. Então, poderíamos escrever:
Com isso, instalaríamos sempre a versão mais atualizada do Flask. Mas, imagine que estamos desenvolvendo o projeto agora e, por algum motivo, daqui a 3 meses, desejamos retornar a essa aplicação, mas acessamos em outro computador. A versão do Flask já é outra, mas o projeto é o mesmo. Então, teremos uma incompatibilidade.
Portanto, não é boa prática instalar sempre a última versão do Flask, porque podemos ter algum problema de incompatibilidade ao testarmos a nossa aplicação em períodos diferentes. Precisamos definir uma versão específica, por exemplo, a 2.0.2:
Vamos apertar "Enter" e a função necessária para iniciarmos a aplicação será importada. Agora, criaremos uma variável em que ficará a aplicação. O nome da aplicação será app, e nela, chamaremos a função Flask(). Dentro dessa função, passaremos __name__, que faz referência ao arquivo e garante que a aplicação será executada. Para rodar a aplicação, precisamos terminar com app.run.
from flask import Flask
app = Flask(name)
app.run()
No entanto, ainda não inserimos nenhuma informação no nosso site. Para isso, precisamos criar uma rota usando @app.route e nomeá-la. Neste exemplo, a nova rota será chamada de /inicio.
from flask import Flask
app = Flask(name)
@app.route('/inicio')
app.run()
Sempre que criamos uma nova rota, precisamos definir uma função que explicará o que existe dentro dessa rota. Neste caso, a função será uma saudação, ola, e retornará a mensagem 'Olá mundo!'na tela:
from flask import Flask
app = Flask(name)
@app.route('/inicio')
def ola():
return 'Olá Mundo!'
app.run()
Precisamos lembrar que não estamos lidando apenas com terminal do Python, mas construindo um site. Na web, não basta adicionar uma string, precisamos trabalhar com HTML. Então, adicionaremos uma tag de título, <h1></h1>. Desta maneira, a frase aparecerá corretamente no site.
from flask import Flask
app = Flask(name)
@app.route('/inicio')
def ola():
return '<h1>Olá Mundo!</h1>'
app.run()
Para rodar a aplicação, clicamos com o botão direito do mouse no código e selecionamos a opção "Run 'jogoteca'". Ao executar, o terminal indicará o endereço em que a aplicação está sendo executada, que neste caso é 127.0.0.1.
Ao abrir a página no navegador, acessando o endereço, recebemos um erro Not Found. Isso ocorre porque definimos uma rota /inicio, portanto, precisamos especificar isso no endereço. Assim, o endereço correto será "127.0.0.1/inicio". Finalmente, o "Olá Mundo!" aparece na tela.
A nossa aplicação está no ar e funcionando. No próximo vídeo, vamos explorar o nosso projeto e aprimorá-lo ainda mais.