Playframework 2.0.x是否支持<;否则,如果>;在模板中

Playframework 2.0.x是否支持<;否则,如果>;在模板中,playframework,Playframework,我想知道play 2.0.3和更高版本是否支持,或者是否在视图中支持?我只知道一个人必须这样编码:if{…}else{if{…}else{…}不能相信这一点。不,它不相信。它只允许您执行if(condition){then…}else{else…} 有关需要使用的更多可能性(类似于PHP的switch()) 在这种情况下,是默认选项 来自先前版本的Play Authenticate的示例(现在控制器中的反射也一样) 因此,您最好的选择可能是在控制器中解析条件,并将其作为参数传递给视图?我也能够

我想知道play 2.0.3和更高版本是否支持
,或者是否在视图中支持
?我只知道一个人必须这样编码:
if{…}else{if{…}else{…}
不能相信这一点。

不,它不相信。它只允许您执行
if(condition){then…}else{else…}

有关需要使用的更多可能性(类似于PHP的
switch()

在这种情况下,
是默认选项

来自先前版本的Play Authenticate的示例(现在控制器中的反射也一样)


因此,您最好的选择可能是在控制器中解析条件,并将其作为参数传递给视图?

我也能够

@{if (true) "foo" else if (true) "bar" else "baz"}
工作。请记住,大多数编程语言不支持将“elseif”作为词法标记。它们是独立的命令。“else”命令执行的代码块恰好是一个“if”语句

还请注意,您可以将XHTML与以下子句混合使用:

 @{if (true) <b>foo</b> else if (false) "bar" else "baz"}
@{if(true)foo else if(false)“bar”else“baz”}
我同意biesior的观点,将状态逻辑推入控制器通常是一个好主意,然后您可以拥有不同状态的不同视图,共享组件有自己的子视图。

否,scala模板中不支持“else if”:


您可以使用模式匹配,也可以将if放入else中。

我在第二个if之前使用了@:

@if (true) {
...
} else { @if (true) {
...
} else {
...
}}

您可以在
Scala
中使用
switch语句来实现它。

示例:

if(x>2){
   <block 1>

} else if(x>0) {
   <block 2>

} else {
   <block 3>
}
if(x>2){
}如果(x>0),则为else{
}否则{
}
翻译成:

x match {
   case x if(x>2) => {<block 1>}
   case x if(x>0) => {<block 2>}
   case _ => {<block 3>}
}
x匹配{
如果(x>2)=>{}
如果(x>0)=>{}
案例u=>{}
}

“希望”在某些情况下可以帮助您,而“希望播放框架”将在不久的将来支持

托德·弗兰德斯的答案是正确的。在包装器@{}中,您可以编写普通的Scala代码。范例

@{
  if (profile.sex == 0) {
    <p class="col-md-6">Other</p>
  } else if (profile.sex == 1) {
    <p class="col-md-6">Male</p>
  } else {
    <p class="col-md-6">Female</p>
  }
}
@{
如果(profile.sex==0){
其他

}else if(profile.sex==1){ 男性

}否则{ 女性

} }
如果最新的playframework支持
,则现在
如果else。讨论到此结束

您可以这样使用:

@if(something) {
  ...
} else if (somethingElse) {
  ...
} else {
  ...
}

对我来说,@if()不能有空格。警告:“else”必须与上一个结束括号在同一行(是的……说真的,叹气……)@AdrienBe哦,是的,这让我的头转了好一阵子Hanks,这是有史以来最好的答案。为什么你们不投票支持这个答案?我同意这是解决这个问题最明智的办法。现在它得到了支持。您需要使用最新的playframework。你确定它已经发布了吗?我使用的是
2.5.14
,但它仍然无法编译(我复制了您的示例,并将条件替换为
true
,将点替换为

。或者我遗漏了什么?
@if(something) {
  ...
} else if (somethingElse) {
  ...
} else {
  ...
}