Grails-如何使用选定的模板渲染视图?

时间:2015-03-18 12:56:59

标签: templates grails controller

我使用以下代码在视图中创建了不同的标签:

<!doctype html>
<html>
<head>
    <meta name="layout" content="main-redesign" />
    <title>Account Settings</title>
</head>
<body>
<%-- global header --%>


<%-- tab navigation your network --%>
<g:render template="accountSettingNavigation"/>

<%-- main content area --%>
<div class="container account-setting">
    <div class="row">
        <div class="col-md-10 col-md-offset-2">
            <h3 class="page-title">ACCOUNT SETTINGS</h3>
            <%-- your network tab containers --%>
            <div class="tab-content mb-100">
                <div class="tab-pane active" id="personalInformation">
                    <g:render template="personalInfo"
                              model="[user:user,editable:editable]" />
                </div>
                <div class="tab-pane" id="changePassword">
                    <g:render template="changePassword"/>
                </div>

            </div>
        </div>  
    </div>
</div>

</body>
</html>

在changePassword模板中,我有一个包含3个字段的表单: 当前密码 新密码确认

用户点击“更新密码”后,表单将提交给控制器以保存新密码。

必须渲染视图并确保选择changePassword模板 - 如何?

2 个答案:

答案 0 :(得分:0)

在您的模型中提供哪些标签处于活动状态,并通过这种方式决定放置active css类的位置。

答案 1 :(得分:0)

  1. 首先在模板中添加隐藏字段,标记选项卡 (比如name =&#34; tabName&#34; value&#34; personalInformation&#34;)
  2. 在控制器中,您可以访问此字段 params(params.tabName)
  3. 在控制器的末尾放了这个 字段进入模型
  4. 在gsp中使用此字段来决定哪个选项卡 活跃