2012-04-20 12 views
6

Provare a passare un valore per un input in un modulo sembra non produrre risultati. La documentazione per il helper inputText mostra un'opzione di valore come parte della creazione dell'input, ma non sono sicuro di come passare i parametri desiderati al costruttore.Compilare gli input in Play Framework

sto passando nei parametri come segue:

@inputText(accountForm("accountName"), args = '_label -> "Account Name: ", '_value -> "Test") 

risposta

7

Il value parametro che si vede nel aiutante inputText proviene dalla classe Field. Se si desidera assegnare al campo un valore predefinito, è necessario impostare il valore nel controller. È possibile impostare valori predefiniti utilizzando il metodo fill dalla classe Form.

Nota: c'è anche lo HTML5 placeholder attribute. È possibile passare questo attributo con l'helper InputText: @inputText(accountForm("accountName"), 'placeholder -> "Test")

11

È possibile compilare la classe Form come suggerito da Li-o o può sovrascrivere il valore del modulo nel modello stesso in questo modo. Questo lo imposterà su "Test" o il valore di "variabile".

@inputText(accountForm("accountName").copy(value=Some("Test")), args = '_label -> "Account Name: ") 
@inputText(accountForm("accountName").copy(value=Some(variable)), args = '_label -> "Account Name: ") 
+0

Penso che la sintassi potrebbe essere qualcosa di simile: 'accountForm (" accountName "). Copy (value = Option [String] (" Test "))' – Ruraj