Scala模板导入可重用块(Play2)

Mic*_*zuk 2 scala playframework scala-template playframework-2.2

我正在使用Play framework 2.2.4和Scala模板.我已经创建了包含许多代码块的基本Scala模板,我想在多个视图中使用它.就像是:

base.scala.html

@()

@display(product: Product) = {
  @product.name ($@product.price)
}
Run Code Online (Sandbox Code Playgroud)

products.scala.html

...
   @display(product)
...
Run Code Online (Sandbox Code Playgroud)

如何在视图中导入此类文件以使用@display块?

Mic*_*jac 6

每个视图片段都应该在它自己的文件中,并在其中声明自己的参数.Play模板应该像单个函数一样工作,而不是很多.而是创建一个名为的目录base,并将视图片段分离为单独的文件.

视图/碱/ display.scala.html

@(product: Product)

@product.name ($@product.price)
Run Code Online (Sandbox Code Playgroud)

意见/ products.scala.html

...
    @base.display(product)
...
Run Code Online (Sandbox Code Playgroud)