Estoy haciendo una pequeña bolsa de trabajo y tengo tarjetitas para cada trabajo. Estas tarjetas se crean dinámicamente a partir de una lista enviada desde mi script de python al html usando matraz/jinja
jobs = [{'title':'fix car', 'description':'my car broke down', 'price':100}]ejemplo HTML
{% for item in jobs %} <p> {{ item['title'] }} {{ item['description'] }} {{ item['price'] }} </p> {% endfor %}Lo que me gustaría es poder hacer que las tarjetas seleccionadas se destaquen o se destaquen. Entonces, en mi secuencia de comandos Python de donde provienen los trabajos, agregué una opción binaria. 1 = destacado, 0 = normal
Entonces, en mi html se vería así:
{% for item in jobs %} <p class='featured if item['featured']'> {{ item['title'] }} {{ item['description'] }} {{ item['price'] }} {% endfor %}por lo que obtendría una nueva clase CSS si su clave destacada se establece en 1.
ejemplo CSS
.featured { background-color: blue; }Puede usar un condicional en línea para obtener un resultado más corto:
<p class='{{"featured" if item["featured"] else "normal"}}'> {{ item['title'] }} {{ item['description'] }} {{ item['price'] }}</p> Sin embargo, si no desea incluir una clase para tarjetas no destacadas, se puede usar una declaración genérica if - else :
{%if item["featured"]%} <p class='featured'> {{ item['title'] }} {{ item['description'] }} {{ item['price'] }}</p> {%else%} <p> {{ item['title'] }} {{ item['description'] }} {{ item['price'] }}</p> {%endif%}