A estrutura deverá ser similar à da aplicação MovieStreamApp que vimos nas aulas (slides das aulas teóricas, código no GitHub):
Deve editar o código Python da aplicação em app.py. Cada "endpoint" da aplicação deve efectuar uma ou mais interrogações à base de dados e utilizar os dados obtidos para gerar HTML usando templates Jinja. Deve colocar as templates de geração de HTML (uma por "endpoint") na pasta templates.
(entre vários outros)
Informação de um filme - "endpoint" /movies/int:id:
- {{ x.attr }} : expande para valor de atributo attr para variável x - [ver documentação]
- {% for x in items %} ... {% endfor %}: iteração
for
sobre lista de valores items [ver documentação]
- <a href ...>: links
-
: [formatação de tabelas](https://www.w3schools.com/html/html_tables.asp) - ,
- : [formatação de listas](https://www.w3schools.com/html/html_lists.asp)
-
, ...: [cabeçalhos de nível 1, 2, ...](https://www.w3schools.com/html/html_headings.asp)
-
: [parágrafos](https://www.w3schools.com/html/html_paragraphs.asp)
- , , ...: formatação de texto em negrito, itálico, ...
Precisa de ter o Python 3 e o gestor de pacotes pip instalado. Experimente executar python3 --version e pip3 --version para saber se já estão instalados. Em caso negativo, pode por exemplo em Ubuntu executar:
sudo apt-get install python3 python3-pip
Tendo Python 3 e pip instalados, deve instalar a biblioteca Flask executando o comando:
pip3 install --user Flask
Edite o ficheiro create_db no que se refere à configuração da sua BD, modificando os parâmetros db_path que indique o ficheiro da base de dados. O ficheiro SQLite para a BD deve residir na mesma pasta que o ficheiro app.py.
Depois de configurar a BD como descrito acima, pode agora iniciar o servidor da aplicação executando python3.\app.py, ex.:
C:\Users\fifia\Desktop\trabalho\app.py:33: SyntaxWarning: invalid escape sequence '\s' sql = re.sub('\s+', ' ', sql)
- Serving Flask app 'app'
- Debug mode: off 2024-12-09 17:53:17 - INFO - WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
- Running on all addresses (0.0.0.0)
- Running on http://127.0.0.1:9001
- Running on http://172.17.17.172:9001 ...
De seguida abra no seu browser http://127.0.0.1:9001 ou http://localhost:9001. Deverá ver uma página com informações referentes à base de dados em estudo (Alunos Matriculados em 2017/2018).
- Aplicações BD com SQL embebido (slides das aulas teóricas)
- MovieStream - aplicação exemplo
- HTML:
- Bibliotecas: