2010-12-07 17 views
4

J'ai joué avec le framework Play pendant quelques jours, et ça a l'air vraiment cool. Cependant, j'ai rencontré quelques problèmes quand j'ai voulu avoir un formulaire sur une page, poster le formulaire et montrer les résultats sur la même page (avec le formulaire toujours sur la page). Est-ce que quelqu'un sait si c'est possible avec Play, et si oui: comment?Comment puis-je poster un formulaire et afficher le résultat sur la même page avec Play framework?

EDIT: J'aurais dû mieux expliquer. Le formulaire est un formulaire de recherche et non un formulaire de sauvegarde. Je veux être capable de chercher quelque chose, avoir les résultats sous le formulaire et avoir les valeurs que l'utilisateur a remplies dans le formulaire (comme si vous tapiez quelque chose qui ne valide pas. des valeurs sur les params objet directement dans l'action de recherche, mais il disparaît lorsque l'action de recherche appelle la nouvelle action.

Répondre

4

Deuxième essai d'une réponse non testée, espérons que cela corresponde à votre problème.

public static void search(String criteria1, String criteria2) { 
.... 
    params.flash(); 
} 

search.gsp

<p id="criteria1-field"> 
     <label for="criteria1">&{'criteria1'}</label> 
     <input type="text" name="criteria1" id="criteria1" value="${flash.criteria1}" /> 
    </p> 
    <p id="criteria2-field"> 
    <label for="criteria2">&{'criteria2'}</label> 
    <input type="text" name="criteria2" id="criteria2" value="${flash.criteria2}" /> 
    </p> 
+0

C'est ce que j'ai fini avec, et cela fonctionne parfaitement. Je vous remercie! – mranders

1

Eh bien, c'est assez simple. vous mettez dans le routes.conf un

GET /myPageWithForm MyController.read  
POST /myPageWithForm MyController.save 

en vous lisez lire les données et de rendre votre page avec le formulaire.Enregistrez-vous enregistrer les données et rediriger pour lire via read();

J'espère que cela répond à votre question.

+0

See mis à jour après. – mranders