python3 last jinja for comment python flask jinja2

python - last - Eliminar espacios en blanco innecesarios de la plantilla renderizada de Jinja



jinja2 python3 (1)

Jinja tiene múltiples formas de controlar los espacios en blanco . No tiene una forma de pretender la salida, tiene que asegurarse manualmente de que todo se vea "bien".

La solución más amplia es establecer trim_blocks y lstrip_blocks en el env.

app.jinja_env.trim_blocks = True app.jinja_env.lstrip_blocks = True

Si desea mantener una nueva línea al final del archivo, configure strip_trailing_newlines = False .

Puede usar caracteres de control para modificar el funcionamiento del espacio en blanco alrededor de un bloque. - Siempre elimina los espacios en blanco antes y después de una etiqueta, + siempre lo conserva antes, anulando la configuración de env para ese bloque. El personaje puede ir al principio o al final (o ambos) de un bloque para controlar los espacios en blanco en esa dirección.

{%- if ... %} strips before {%+ if ... %} preserves before {%+ if ... -%} preserves before and strips after remember that `{% endif %}` is treated separately

Tenga en cuenta que los caracteres de control solo se aplican a las plantillas que escribe. Si incluye una plantilla o utiliza una macro de un tercero, sin embargo, escribieron que la plantilla se aplicará a esa parte.

Estoy usando curl para ver el resultado de mi aplicación web. Cuando Flask y Jinja renderizan plantillas, hay una gran cantidad de espacio en blanco innecesario en la salida. Parece que se agrega renderizando varios componentes de Flask-WTF y Flask-Bootstrap. Podría quitar esto usando sed , pero ¿hay una manera de controlar esto desde Jinja?