In playframework 1.x there used to be some bundled java extensions for the templating engine: http://www.playframework.org/documentation/1.2.3/javaextensions
I'm looking for the same functionality in playframework 2.0. For example how would I do this?
colour${['red', 'green', 'blue'].pluralize()}
I am doing this malually now:
We have @colours.size colour@if(colours.size > 0){s}
the must be a cleaner more reusable way to do this?
You can leverage the pimp my lib Scala pattern to implement something equivalent to Play 1.x Java extensions.
For example, the pluralize
method on collection can be implemented as follows:
// File app/views/pimps.scala
package views
package object pimps {
class PimpedTraversable[A](col: Traversable[A]) {
def pluralize = if (col.size == 1) "" else "s"
}
implicit def pimpTraversable[A](col: Traversable[A]) = new PimpedTraversable(col)
}
You can then use it as follows:
@import views.pimps._
We have @colours.size [email protected]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With