gpt4 book ai didi

if-statement - 模板中的 SilverStripe 条件

转载 作者:行者123 更新时间:2023-12-04 05:23:02 26 4
gpt4 key购买 nike

我正在尝试修改我的一个模板,以便在除两种页面类型之外的所有页面类型上调用特定的包含。

我使用的代码是:

<% if ClassName != BusinessPage || ClassName != BusinessSubPage %>
... some code here
<% end_if %>

这不起作用,因为 if 语句会传递所有页面类型,并且会触发 if 语句中的代码。

如果我将代码缩短为仅一种页面类型,它会在该页面类型上给出预期的结果:

<% if ClassName != BusinessPage %>
... some code here
<% end_if %>

在 if 语句中使用 ClassName 作为条件是否有一些我需要注意的意外问题可以解释我的问题?

最佳答案

您的 if 语句逻辑不太正确。你想要的是使用 && (AND) 而不是 || (OR):

<% if $ClassName != "BusinessPage" && $ClassName != "BusinessSubPage" %>

这是一个逻辑表,显示了三个不同类名的结果。

$ClassName      | $CN != BusinessPage | $CN != BusinessSubPage | OR    | AND   |
----------------|---------------------|------------------------|-------|-------|
ABC | true | true | true | true |
BusinessPage | false | true | true | false |
BusinessSubPage | true | false | true | false |

OR 列表明,无论 ClassName 是什么,结果始终为真。这就是 if 语句总是通过的原因。

关于if-statement - 模板中的 SilverStripe 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39843386/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com