精通 Grails: 身份验证和授权
2009-10-26 00:00:00 来源:WEB开发网现在可以确定身份验证能够正常工作,应当创建一个 TagLib 来简化登录和退出。
创建一个身份验证 TagLib
像 Google 和 Amazon 这样的 Web 站点在标题处提供了一个不太显眼的文本链接,允许您登录和退出。您只需要几行代码就可以在 Grails 中实现这一点。
首先,在命令提示下输入 grails create-tag-lib Login。将清单 4 中的代码添加到新创建的 grails-app/taglib/LoginTagLib.groovy 中:
清单 4. LoginTagLib.groovyclass LoginTagLib {
def loginControl = {
if(session.user){
out << "Hello ${session.user.name} "
out << """[${link(action:"logout", controller:"user"){"Logout"}}]"""
} else {
out << """[${link(action:"login", controller:"user"){"Login"}}]"""
}
}
}
现在,将新的 <g:loginControl> 标记添加到 grails-app/views/layouts/_header.gsp,如清单 5 所示:
清单 5. 将 <loginControl> 标记添加到标题<div id="header">
<p><g:link class="header-main" controller="entry">Blogito</g:link></p>
<p class="header-sub">A tiny little blog</p>
<div id="loginHeader">
<g:loginControl />
</div>
</div>
最后,将针对 loginHeader <div> 的一些 CSS 格式添加到 web-app/css/main.css,如清单 6 所示:
- ››精通Photoshop之通道详解
- ››身份证函数 查看身份证地区信息(1)
- ››身份证函数 查看身份证地区信息(2)
- ››精通 Grails: 使用 Grails 进行单元测试(单元测试...
- ››精通 Grails: 创建自定义插件
- ››精通 Grails: 在企业中使用 Grails
- ››精通 Grails: Grails 与移动 Web
- ››精通 Grails: Grails 与遗留数据库
- ››精通 Grails: RESTful Grails
- ››精通 Grails: 用 JSON 和 Ajax 实现异步 Grails
- ››精通 Grails: 用定制 URI 和 codec 优化 Grails 中...
- ››精通 Grails: 身份验证和授权
更多精彩
赞助商链接