2013-05-22 3 views
0

Я хочу передать строку в шаблон формы, а затем отправить форму и перенаправить на предыдущую страницу, используя строку, которую я отправил. Причина, по которой я хочу это сделать, состоит в том, чтобы предотвратить выпуск формы POST на странице после POST.Каков наилучший способ передать строку между представлениями

Я создал этот ПОЛУЧАЕТЕ:

GET /form/:page        controllers.Pages.form(page) 

и внешний вид такой же контроллер

public static Result form(String page) {   
    return ok(form.render(userForm),page); 
} 

и я пытаюсь маршрут так:

<a href="@routes.Pages.form(page)" class="btn btn-info">send </a> 

Что вы предпочли способ передачи параметров между представлениями?

+0

@ i.am.michiel спасибо за отредактируйте вопрос – MIkCode

ответ

0

Я тоже новичок, чтобы играть, но я вижу несколько проблем

Во-первых, ваш файл маршруты должны быть

GET /form/:page      controllers.Pages.form(page: String)

и в контроллере Страницы,

public static Result form(String page) {   
    return ok(form.render(userForm,page)); //Not ok(form.render(userForm),page) 
} 

, наконец, на вид,

@(page :String) 

<a href="@routes.Pages.form(page)" class="btn btn-info">send </a> 
0

В вашем примере просто позвонить:

<a href="@controllers.routes.Pages.form(page)" class="btn btn-info">send </a> 

или

<a href="/form/@page" class="btn btn-info">send </a> 

И это не должно быть внутри HTML тега формы.

Чтобы быть уверенным, проверка с поджигатель, что ваш браузер посылает GET

+0

на обоих вариантов я получаю «не найдено: страницы значение» ... – MIkCode

+0

Определена ли страница? Вы должны определить переменную страницу '@ (page: String)' или иначе. –

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