【问题标题】:what is the best way to pass a string between views在视图之间传递字符串的最佳方法是什么
【发布时间】:2013-05-24 19:24:22
【问题描述】:

我想将一个字符串传递给“表单”页面模板,然后使用我发送的字符串发布表单并重定向到上一页。我想这样做的原因是为了防止 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>

在视图之间传递参数的首选方式是什么?

【问题讨论】:

  • @i.am.michiel 感谢您编辑问题

标签: playframework playframework-2.0


【解决方案1】:

我也是新手,但我发现了一些问题

首先,你的路由文件应该是

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>

【讨论】:

    【解决方案2】:

    在您的示例中,只需调用:

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

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

    而且这个 a 不应该在 html 表单标签内。

    为了确保检查 firebug,您的浏览器发送 GET

    【讨论】:

    • 页面是否已定义?您应该定义变量页面@(page:String) 或其他方式。
    猜你喜欢
    • 1970-01-01
    • 2011-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-15
    • 2013-12-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多