2010-11-08 15 views
6

¿Cómo hago un if/else simple en el lenguaje de plantillas Genshi?Genshi: if/else

He encontrado this ticket, lo que parece sugerir que Genshi no es compatible con if/else, pero en realidad no explica qué es lo que admite.

que, básicamente, sólo quieren algo como esto:

<py:if test="c.row.currency"> 
    ${c.row.currency.upper()} 
    <py:else> 
    ${c.row.dataset_.currency.upper()} 
    </py:if> 

pero me da 'Bad Directiva: otra cosa'. ¿Debo usar py:choose instead? Realmente no puedo entender cómo usarlo para una condición if/else.

Respuesta

8

Actualmente, no se puede hacer otras construcciones en Genshi, y hasta donde tengo conocimiento, no hay planes para agregarlo. En cambio, como mencionaste, usa py: elige. La siguiente es la forma de usar py: elija como un tipo de construcción if/else:

<py:choose ...> 
    <py:when test="..."> 
    ${c.row.currency.upper()} 
    </py:when> 
    <py:otherwise> 
    ${c.row.currency.upper()} 
    </py:otherwise> 
</py:choose> 
+0

Eso funciona, ¡gracias! Acabo de usar como etiqueta de apertura. – AP257

Cuestiones relacionadas