2012-05-09 6 views
7

Sto lottando un po 'con il sistema di modelli di gioco 2.0; Ho un metodo che restituisce ciò che in scala è un 'Int' e voglio formattarlo usando il modello "#, ###".come formattare un numero/una data nel modello di gioco 2.0?

Ho provato @order.itemCount().format("#,###") e @(order.item.count() format "#,###") ma non amore.

Non sono sicuro se c'è un trucco nella sintassi del modello di riproduzione o se ho solo bisogno di imparare come farlo in Scala.

risposta

6

L'approccio più semplice sarebbe quella di utilizzare Java's string formatting:

scala> val n = 1000000 
n: Int = 1000000 

scala> "%,d".format(n) 
res0: String = 1,000,000 

Questo sarà anche di gestire la localizzazione in modo corretto:

scala> String.format(java.util.Locale.ITALY, "%,d", n: java.lang.Integer) 
res1: java.lang.String = 1.000.000 
+0

La sintassi mi sembra un po 'innaturale, ma sicuramente lo è. Grazie! – akbertram

+0

Bene, ma come si ottiene la locale corretta all'interno di un modello? –

0

Che dire di questo:

<td>@("%.2f".formatLocal(lang().toLocale(), variable.getAverage()))</td> 
Problemi correlati