Paginas Estáticas e Dinâmicas com CSS Global no Flask

Flask com estilo

Compreenda as diferenças entre páginas estáticas e dinâmicas, bem como o uso de um CSS global. Além disso, a tecnologia Flask, uma estrutura leve em Python para aplicações web, fornece ferramentas para implementar ambas as abordagens de maneira eficiente. Ademais, permite o uso de um CSS global para estilização consistente. Assim, este texto explora essas diferenças, o uso do Flask e como gerenciar um CSS global para uma aplicação bem organizada e visualmente atraente.

Páginas estáticas são aquelas cujo conteúdo é fixo e não muda. Por outro lado, páginas dinâmicas ajustam seu conteúdo com base em interações do usuário, entradas de dados ou informações vindas de um banco de dados ou API. Portanto, essas páginas permitem uma experiência personalizada e interativa.

No caso do Flask, isso é alcançado usando templates dinâmicos com o mecanismo Jinja2. Com ele, é possível inserir variáveis no HTML, criar lógicas condicionais e adicionar laços dentro dos templates. Dessa forma, o Flask proporciona flexibilidade e eficiência na construção de aplicações web. Consequentemente, ele atende tanto a demandas estáticas quanto dinâmicas. Além do mais, o uso de CSS global garante consistência visual em toda a aplicação.

O Flask e a Organização de Arquivos

Antes de implementar páginas estáticas e dinâmicas, é importante entender como organizar os arquivos em um projeto Flask.
Uma estrutura típica de projeto pode ser:

  • app.py: Contém a lógica principal da aplicação Flask.
  • static/: Diretório para arquivos estáticos como CSS, JavaScript e imagens.
  • templates/: Diretório para arquivos HTML.

Criando um CSS Global

O CSS global é um arquivo de estilização que será aplicado a todas as páginas da aplicação, garantindo consistência visual.
No diretório static/css/, crie um arquivo chamado styles.css com o seguinte conteúdo:

  1. Referenciar o CSS no Template Base:

No diretório templates/, crie um arquivo base.html que servirá como modelo base para outras páginas:

Criando Páginas Estáticas no Flask

Com o template base configurado, criar páginas estáticas é simples. Por exemplo, crie uma página index.html

No app.py, registre a rota correspondente:

Criando Páginas Dinâmicas no Flask

Para uma página dinâmica, crie um arquivo dynamic.html:

Atualize o app.py para passar dados dinâmicos:

 

Quando o usuário acessar a rota /dynamic/SeuNome, o Flask renderizará a página dinâmica com os dados fornecidos.

Vantagens de um CSS Global

  • Consistência Visual: Todas as páginas compartilham a mesma estilização, criando uma experiência uniforme.
  • Facilidade de Manutenção: Alterar uma regra CSS afeta todas as páginas simultaneamente.
  • Organização: Um arquivo centralizado evita redundância de código.
Referências:

Primeiros passos no Flask

Lâmpada mágica

Nestes primeiros passos no Flask vamos explorar a programação web utilizando o micro framework Flask. Primeiramente, nos concentraremos em entender os conceitos iniciais e, logo depois, adicionaremos comentários de forma sequencial para facilitar o aprendizado e a aplicação prática.

Para começar, antes de qualquer outro passo, crie seu projeto e, em seguida, instale o Python e o Flask. Além disso, é importante garantir que todas as configurações básicas estejam funcionando corretamente para evitar problemas mais adiante. Todos os exemplos apresentados neste post foram cuidadosamente baseados no site oficial do Flask, o que, consequentemente, assegura a confiabilidade do conteúdo que você estará estudando.

No Flask, diferentemente de outras ferramentas, criamos nossas rotas manualmente utilizando o decorador @app.route(). Esse processo, embora simples, é essencial para o funcionamento correto do aplicativo e, por isso, será abordado em mais detalhes a seguir.

Home

‘ @app.route(“/hello”) def hello_world(): return ”

Hello, World!

” @app.route(“/”) def hello_name(name): return f”

Hello, {escape(name)}!

” # Executa o aplicativo LOCALMENTE (localhost) na porta 5000 if __name__ == ‘__main__’: app.run(host=’127.0.0.1′, port=5000) “”” Resultados: Vejamos as Rotas: “http://127.0.0.1:5000/” veremos um texto “Home”, “http://127.0.0.1:5000/hello” veremos “Hello, World”, “http://127.0.0.1:5000/Pedro” veremos “Hello, Pedro” “””

No último exemplo, utilizamos o escape, que permite enviar um parâmetro ao servidor de maneira simples. Por exemplo, ao escrever “Pedro” na URL, recebemos a concatenação “Hello, ” + “Pedro”. Contudo, é essencial destacar que esse método, conforme apresentado, não é seguro. É necessário criptografar as informações antes de enviá-las pela rede. Em um próximo post, discutiremos como criptografar e descriptografar dados de forma eficaz.

Conclusão:

No post “Páginas Estáticas e Dinâmicas com CSS Global no Flask“, exploraremos a estilização e a utilização de modelos HTML. O objetivo do estudo com Flask é compreender o funcionamento de um servidor de Back-End, seja por API ou integração com bases de dados, permitindo interação direta com o Front-End.

Sugiro estudar o Front-End utilizando o Next.js, que facilita a criação de bibliotecas de componentes React e rotas dinâmicas. Além disso, dominar a criação de páginas no servidor Back-End, mesmo diretamente no Flask, permitirá o desenvolvimento de páginas administrativas e a futura apresentação de tabelas dinâmicas com informações provenientes do servidor.

Referências:

Publicidade – Livros da Amazon: