在 Grails 中创建自定义条件 TagLib
我正在尝试在 grails 中创建一个条件标签库来确定是否显示用户头像(我基于此处找到的 ifLoggedIn 标签编写代码: http://www.grails.org/AuthTagLib )
我的标签库看起来像这样:
def ifProfileAvatar = {attrs, body ->
def username = session.user.login
def currentUser = Account.findByLogin(username)
if (currentUser.profile && currentUser.profile.avatar) {
out << "avatar found"
body{}
}
}
在我的 GSP 中,我使用这样的标签:
<g:ifProfileAvatar>
<br/>profile found!<br/>
</g:ifProfileAvatar>
当我导航到 GSP 时,“找到头像”是正确显示(直接来自标签库)但“找到配置文件!”不是。
标签库中的 body{}
没有在 GSP 中显示正文有什么原因吗?
有什么想法可能会出错吗?
谢谢!
I am trying to create a conditional taglib in grails to determine whether or not to display a user Avatar (I based the code on the ifLoggedIn tags found here: http://www.grails.org/AuthTagLib )
My taglib looks like this:
def ifProfileAvatar = {attrs, body ->
def username = session.user.login
def currentUser = Account.findByLogin(username)
if (currentUser.profile && currentUser.profile.avatar) {
out << "avatar found"
body{}
}
}
And in my GSP I use the tag like this:
<g:ifProfileAvatar>
<br/>profile found!<br/>
</g:ifProfileAvatar>
When I navigate to the GSP, "avatar found" is being displayed correctly (directly from the taglib) but "profile found!" is not.
Is there any reason that the body{}
in the taglib is not showing the body in the GSP?
Any ideas where it might be going wrong?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
body
之后的大括号类型错误,我认为应该是:参见 文档中的此页面了解更多示例
Wrong sort of braces after
body
, I think it should be:See this page in the documentation for more examples