2012-06-25 2 views
2

J'ai un formulaire POST de base soumis. Chaque fois qu'un formulaire est soumis, une base de données est mise à jour. Si quelqu'un essaie d'actualiser la page, vous obtenez un «Confirmer la nouvelle soumission du formulaire? Y-a-t-il un moyen d'éviter ça? Je sais que c'est réalisable avec PHP mais ce n'est pas une option iciÉviter la resoumission de formulaire dans Play Framework 2.0

Merci!

Répondre

6

L'action qui accepte votre formulaire POST doit valider les données dans la base de données, puis rediriger vers une autre action. Ainsi, lorsque l'utilisateur clique sur Actualiser, il ne lit que les données et ne les écrit pas.

Voici un exemple:

public Result terminate(Long depositKey) throws Exception { 
    depositsService.cancelScheduledDeposit(getCurrentUser().memberKey(), depositKey); 
    return redirect(routes.ControllerFactory.deposits.terminateConfirmation(depositKey)); 
    } 
+2

cela est appelé Post/Redirect/Get: http://en.wikipedia.org/wiki/Post/Redirect/Get –

+0

Merci, cela a fonctionné !! – by0

+1

@Omar: Heureux que ça a marché pour vous. Pourriez-vous accepter ma réponse en cliquant sur la coche? Je suis dans ce jeu pour la réputation, pas pour aider les gens, P Hahaha je plaisante mais sérieusement je vais prendre une coche verte s'il vous plaît: D – Samo

Questions connexes