Pylons kullanarak Mako koşullu operatör

1 Cevap php

PHP, sık sık söz konusu eleman için geçerlidir, bir html elemanına bir öznitelik eklemek için koşullu operatörünü kullanın. Örneğin:

<select name="blah">
    <option value="1"<?= $blah == 1 ? ' selected="selected"' : '' ?>>
        One
    </option>
    <option value="2"<?= $blah == 2 ? ' selected="selected"' : '' ?>>
        Two
    </option>
</select>

Ben Pylons çiftleşmiş için Mako kullanarak bir proje başlıyorum. Nasıl benzer bir şey elde edebilirsiniz? Şu anda, ben ideal olmayan iki olasılık görüyorum.

Çözüm 1:

<select name="blah">
    % if blah == 1:
    <option value="1" selected="selected">One</option>
    % else:
    <option value="1">One</option>
    % endif
    % if blah == 2:
    <option value="2" selected="selected">Two</option>
    % else:
    <option value="2">Two</option>
    % endif
</select>

Çözüm 2:

<select name="blah">
    <option value="1"
    % if blah == 1:
        selected="selected"
    % endif
    >One</option>
    <option value="2"
    % if blah == 2:
        selected="selected"
    % endif
    >Two</option>
</select>

Bu özel durumda, (değer = "1" => blah == 1) test değişkeni eşittir, ama ben <?= isset($variable) ? ' value="$variable" : '' ?> gibi, diğer durumlarda aynı desen kullanın.

Ben Mako kullanarak bunu başarmak için temiz bir yol arıyorum.

1 Cevap

Bu Python çalışıyor ise, "üçlü operatörü" dir

# condition ? trueValue : falseValue
trueValue if condition else falseValue