5

我有一个复选框,我试图在 Volt 中构建:

<input type="checkbox" class="myClass" data-size="small" data-type="{{ type.getType() }}">

所以现在我通常会这样写

{{ check_field( 'class':'my class', 'data-size':'small', 'data-model-pk': ''~ AclGroup.id_group ) }}'

但是我想做这样的事情:

<input type="checkbox" class="myClass" {% if AclGroup.flg_active == 1 %} checked="" {% endif %} data-size="small" data-type="{{ type.getType() }}">

但我不知道如何在里面做一个声明{{ }}

我尝试摆脱{{ }}{% %}{{ }}和一堆其他东西,但我找不到任何涵盖它的文档,而且我尝试过的任何东西都不起作用。有任何想法吗?

4

2 回答 2

4

一行代码:

{{ check_field( 'class':'my class', 'data-size':'small', 'data-model-pk':  AclGroup.id_group, 'checked':(AclGroup.flg_acive == 1 ? true : null) ) }}'

有趣的是,这也会起作用:

{{ check_field( 'class':'my class', 'data-size':'small', 'data-model-pk':  AclGroup.id_group, 'checked':(AclGroup.flg_acive == 1 ? false : null) ) }}'

但我认为第一个更合乎逻辑。

于 2015-11-12T23:45:31.330 回答
4

您总是可以按照您在示例中给出的那样保留它 - Volt 有时只是生成 Html 的好方法。

但是,我会这样做

{% if AclGroup.flg_acive == 1 %}
    {{ check_field( 'class':'my class', 'checked': "", 'data-size':'small', 'data-type': type.getType() ) }}
{% else %}
    {{ check_field( 'class':'my class', 'data-size':'small', 'data-type': type.getType() ) }}
{% endif %}

我知道,没有办法在- - 中使用if语句,因此您需要有 2 个回显并使用 and代替。echo{{...}}if-else

于 2015-09-16T22:27:42.730 回答