If statement 无环剥条斑马

If statement 无环剥条斑马,if-statement,twig,If Statement,Twig,我有一个表,它的行是根据用户的输入动态生成的。它是一个费用汇总,如果用户有促销代码,它可能接受也可能不接受,如果用户发送促销代码,它可能接受礼品消息。无法在循环中生成费用汇总的项目,因为这些项目来自我的应用程序中的不同位置。我只对用户的订单上显示或不显示的项目设置了条件,这取决于订单是什么样的。这张桌子需要剥去斑马线。由于项目的数量可能会有所不同,我无法将颜色硬编码到电子邮件中。我在行上尝试了twig的可除性和模,因此偶数行和奇数行的颜色会交替。虽然颜色改变了,但它并没有变为我想要的颜色,也没有

我有一个表,它的行是根据用户的输入动态生成的。它是一个费用汇总,如果用户有促销代码,它可能接受也可能不接受,如果用户发送促销代码,它可能接受礼品消息。无法在循环中生成费用汇总的项目,因为这些项目来自我的应用程序中的不同位置。我只对用户的订单上显示或不显示的项目设置了条件,这取决于订单是什么样的。这张桌子需要剥去斑马线。由于项目的数量可能会有所不同,我无法将颜色硬编码到电子邮件中。我在行上尝试了twig的可除性和模,因此偶数行和奇数行的颜色会交替。虽然颜色改变了,但它并没有变为我想要的颜色,也没有做斑马线剥离,所有行都变为蓝色。我需要颜色在浅米色fcf9f5和白色FFFF之间交替。我错过了什么

以下是一个tr的代码:

{% set index = 0 %}                         
    <tr bgcolor="{% if index is divisibleby(2) %} #fcf9f5 {% else %}  #ffffff {% endif %}">
        <td align="left" style="height: 30px; width: 273px; padding-left: 40px;">
            <span style="font-family:'HelveticaNeue-Light', 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial,'Lucida Grande', sans-serif;font-weight: 500;">Order Subtotal:</span>    
        </td>

        <td align="left" style="height: 30px; width: 273px; padding-left: 40px;font-family:'HelveticaNeue-Light', 'Helvetica Neue Light', 'Helvetica Neue', Helvetica, Arial,'Lucida Grande', sans-serif; font-weight: 300;">
            <span>{{ order.itemsTotal|sylius_price }}</span>    
        </td>                                           
    </tr>
{% index++ %}

很抱歉,Twig无法更正您的代码不干净的事实

假设你有3个不同的来源。如果将它们全部显示在一个数组中,则它们具有所有的comon属性,对吗

您只需将所有源对象合并到一个简单的可显示对象中,即可创建DTO

细枝不能包含业务逻辑,它只是显示内容


如果您想在视图中保留逻辑,请尝试使用细枝函数组合数组并在循环中显示它们

请在{%set index=0%}之前和{%index++%}之后显示代码。我假设您为每一行设置了索引变量。顺便说一句,为了为标准循环数组做好格式准备,您可以始终使用twig简单函数NHG,索引前的代码与我尝试在其上做斑马线标记的表不相关。我正在为所有需要交替颜色的行使用,并在每行末尾增加索引。这里的问题是为什么颜色与我使用的十六进制不匹配。我认为这可能是一个间隔问题。如果我在十六进制周围加空格,颜色也会改变。