Scala 将参数从一个模板传递到另一个模板

Scala 将参数从一个模板传递到另一个模板,scala,playframework-2.0,Scala,Playframework 2.0,我正在尝试使用提供的模板系统编写一个带有Play的web应用程序。我试图将模板分为标题区和内容区。以下是我为模板编写的代码: 内容: @(file: models.File) @header(@file.title) <h2>@file.title</h2> <img src="@file.fileLocation"> 看起来我试图将title参数错误地传递到header模板中。我应该使用什么语法来传递title参数?播放模板解析器将@识别为Scala表达式

我正在尝试使用提供的模板系统编写一个带有Play的web应用程序。我试图将模板分为标题区和内容区。以下是我为模板编写的代码:

内容:

@(file: models.File)
@header(@file.title)
<h2>@file.title</h2>
<img src="@file.fileLocation">

看起来我试图将title参数错误地传递到header模板中。我应该使用什么语法来传递title参数?

播放模板解析器将
@
识别为Scala表达式的开头,但它使用魔术来找出表达式的结尾。(我想,类似于寻找收尾括号或大括号)


因此,在您的代码中,
@header(@file.title)
都是Scala代码,而不是HTML模板,第二个
@
是不必要的。您只需要
@header(file.title)

播放模板解析器将
@
识别为Scala表达式的开头,但它使用魔术来找出表达式的结尾。(我想,类似于寻找收尾括号或大括号)


因此,在您的代码中,
@header(@file.title)
都是Scala代码,而不是HTML模板,第二个
@
是不必要的。您只需要
@header(file.title)

谢谢您的澄清。我知道第二个@导致了问题,但不知道如何解决问题。感谢您的澄清。我知道第二个@导致了问题,但不知道如何解决问题。
@(title: String)
<!DOCTYPE html>
<html>
  <head>
    <title>@title</title>
  </head>
  <body>
2: illegal start of simple expression
[error] @header(@file.title)
[error]         ^