symfony - Twig 和 bool 值

标签 symfony if-statement twig

我有一个像这样的图像类:

class Image {
private $color;
private $name;
private $gradient;
private $colorGradient;

function __construct() {
    $this->color = "FFFFFF";
    $this->name = "blanc";
    $this->gradient = false;
    $this->colorGradient = "";
}

在我的 Controller 中我有这个:

public function indexAction() {
    $image = new Image();

    $form = $this->createFormBuilder($image)
            ->add('color', 'text')
            ->add('name', 'text')
            ->add('gradient', 'checkbox')
            ->add('colorGradient', 'text')
            ->getForm();

    return $this->render('CramifImageBuilderBundle:Builder:index.html.twig', array('form' => $form->createView()));
}

在 index.html.twig 我有这个:

<form action="{{ path('cramif_image_builder_image_new') }}" method="post" {{  form_enctype(form) }}>
        {{ form_errors(form) }}

        {{form_row(form.color)}}
        {{form_row(form.name)}}

        <div id="gradient">
            {{form_row(form.gradient)}}
        </div>

        {% if form.gradient == true %}
            <div id="gradient_color">
                {{form_row(form.colorGradient)}}
            </div>
        {% endif %}

        <input id="submit" type='submit' value='Créer' />
    </form>

如果 gradient = true 复选框被选中(好),值为'1'

<input id="form_gradient" type="checkbox" checked="checked" value="1" required="required" name="form[gradient]">

如果 gradient = false 复选框未被选中(良好)且值 = '1'

<input id="form_gradient" type="checkbox" value="1" required="required" name="form[gradient]">

问题是无论渐变的值是多少,它就像渐变是真的:所以颜色渐变字段总是显示

谢谢

最佳答案

我还没有测试过这个,但是试试

{% if form.gradient.vars.checked %}
    <div id="gradient_color">
        {{ form_row(form.colorGradient) }}
    </div>
{% endif %}

关于symfony - Twig 和 bool 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15528888/

相关文章:

javascript - 在 Javascript 中,如果 if 语句不返回任何内容,则不执行任何操作

c# - 简化if条件?

javascript - jtable 的验证引擎无法工作 Uncaught TypeError : $(. ..).live 不是函数

php - Symfony 4 注册表第二次提交 "There is already an active transaction"

symfony - 将Elastica与PagerFanta和动态querybuilder一起使用

php - 如何在 symfony2 中创建自定义事件

bash - 无法解释bash脚本中的语法错误

tags - 如何在 Drupal 8 上的 TWIG 中以纯文本形式显示节点的标题?

php - 添加事件类以与 sf2 和 twig 链接

php - Symfony 邮件程序原始内容很奇怪,包含 =20 =3D =