2012-06-25 5 views
2

У меня есть основная форма отправки POST. Каждый раз, когда отправляется форма, база данных обновляется. Если кто-то пытается обновить страницу, вы получаете сообщение «Подтвердить форму повторно?». Есть ли вообще избежать этого? Я знаю, что это возможно с PHP, но это не вариант здесьИзбегайте повторной отправки формы в Play Framework 2.0

Спасибо!

ответ

6

Действие, принимающее вашу форму POST, должно передать данные в базу данных и затем перенаправить на другое действие. Таким образом, когда пользователь нажимает обновление, они будут читать только данные, а не записывать их.

Вот пример:

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

это называется Post/Redirect/Get: http://en.wikipedia.org/wiki/Post/Redirect/Get –

+0

Спасибо, это сработало !! – by0

+1

@ Omar: Рад, что это сработало для вас. Не могли бы вы принять мой ответ, нажав галочку? Я в этой игре за репутацию, а не для людей, P Hahaha просто шутит, но серьезно я возьму зеленый галочку, пожалуйста: D – Samo

Смежные вопросы