2010-11-08 15 views
6

Jak zrobić proste// w języku szablonów Genshi?Genshi: if/else

Znalazłem this ticket, który wydaje się sugerować, że Genshi nie obsługuje, jeśli/else, ale tak naprawdę nie wyjaśnia, co obsługuje zamiast tego.

I w zasadzie po prostu chcą coś takiego:

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

Ale mam 'zły dyrektywę: else'. Czy powinienem używać py:choose instead? Naprawdę nie mogę zrozumieć, jak go używać dla warunku if/else.

Odpowiedz

8

Obecnie nie można, jeśli nie robimy inaczej w Genshi, i o ile wiem, nie ma planów, aby go dodać. Zamiast tego, jak wspomniałeś, użyj py: wybierz. Oto jak używać py: wybierz jako typ konstruktu/else:

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

To działa, dziękuję! Właśnie użyłem jako otwierającego tagu. – AP257

Powiązane problemy