Neste exercício, o objetivo é criar um blog simples utilizando apenas conceitos básicos do Flask.
- Utilize apenas os conceitos de redirecionamentos, configuração de sessões manualmente com cookies e flash messages.
- Não utilize extensões do Flask para simplificar o desenvolvimento.
- O banco de dados deve ser simulado utilizando dicionários.
Implemente as seguintes funcionalidades:
-
Criação de uma endpoint API para carregar o conteúdo de todos os posts.
-
Sistema de login (
login.html
)- Implemente um sistema de login para o admin.
- Caso o usuário não seja o admin, permita que ele acesse os blogs normalmente.
-
Perfil do usuário (
profile.html
)- Exibir informações sobre o usuário (nome, foto de perfil, etc)
- Implemente um formulário para o usuário poder editar seu usuário.
-
Página de criação de posts (
create_post.html
)- Criar um novo post, fornecendo um título e conteúdo.
-
Página de visualização de Post (
post.html
)- Exibir o título, conteúdo e os comentários.
-
Área de comentários (Opcional)
- Adicione a funcionalidade de comentários em cada post. Cada comentário deve ter um autor e conteúdo.
-
Página inicial (
index.html
)- Esta página deverá exibir uma lista de posts, com paginação usando QueryString.
- Uma barra de pesquisa para filtrar os posts.
- Modificar o endpoint
/api/allPosts
paraapi/getPosts?page=<NUMERO_DA_PAGINA>
. - Na rota
/
será apresentado a Viewìndex.html
. Esta View irá realizar o seguintes passos: - A View terá uma variável contador
nextPage
. - A View irá consultar o endpoint
api/getPosts
para obter os posts utilizandonextPage
para definir a página atual. - A View irá apresentar esses posts obtidos.
- Será apresentado um botão
id="btnNextPage"
, com a funcionalidade de paginação na View. - A View irá consultar novamente a endpoint
api/getPosts
, para obter os posts utilizandonextPage
(valor da próxima página). - Este botão
id="btnNextPage"
irá remover todos os posts da página atual, e - Irá para apresentar os posts na View.