Macros para marcação repetida
Escreva funções de modelo para evitar copiar e colar.
Macros para marcação repetida é uma aula grátis de Flask Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Flask Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Flask Academy inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em inglês.
Repeated Markup Begs for a Function
When the same input field or card markup appears with small tweaks, copying it gets messy. A macro turns that pattern into a reusable function. 🛠️
What a Macro Is
A macro is a template function: you define markup once with parameters, then call it many times with different arguments.
Define a Macro
You declare a macro with a name and parameters, write its markup, and close it with endmacro. It is reusable from then on.
{% macro field(name) %}
<input name="{{ name }}">
{% endmacro %}Call a Macro
Invoke a macro like a function, passing arguments. Jinja2 renders the macro body with those values right where you call it.
{{ field("email") }}Parameters Customize Output
Macro parameters let one definition produce many variations, such as different input types or labels, from a single source of markup.
{% macro field(name, type="text") %}
<input name="{{ name }}" type="{{ type }}">
{% endmacro %}Default Argument Values
Give parameters defaults so common calls stay short. Callers override a default only when they need something different.
{{ field("age", type="number") }}Keep Macros in Their Own File
Store shared macros in a file like forms.html so many templates can import and reuse the same helpers.
{% import "forms.html" as forms %}Import Then Call
After import, call a macro through its namespace. This keeps your macro library separate from the page using it.
{{ forms.field("email") }}Import Specific Macros
Use from import to pull just the macros you need by name, keeping the template clean and the intent obvious.
{% from "forms.html" import field %}Macros vs Includes
An include drops fixed markup; a macro takes arguments and varies its output. Reach for macros when the snippet must change per call.
DRY Templates at Last
Macros remove copy-paste from your templates: fix the field markup once and every call site updates. That is templating done right. ✨
Quick Check
What makes a macro different from an include?
Recap: Macros
A macro is a reusable, parameterized template function. Define it once, import it, and call it anywhere to keep templates DRY. 🎯
Perguntas Frequentes
A aula “Macros para marcação repetida” é grátis?
Sim — o texto completo de “Macros para marcação repetida” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Flask Academy, atualize para CoddyKit PRO. O curso de Flask Academy inclui 4 aulas no total.
O que vou aprender em “Macros para marcação repetida”?
Escreva funções de modelo para evitar copiar e colar. Você pratica Flask Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Flask Academy?
Nenhuma experiência prévia é necessária. Flask Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Macros para marcação repetida”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Flask Academy?
Sim. Cada aula de Flask Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Defina um modelo base com blocos
- Estenda o modelo base em páginas filhas
- Inclua parciais reutilizáveis
- Macros para marcação repetida