在Grails中编辑我自己的用户页面

时间:2009-08-05 13:15:40

标签: security grails

我正在使用Acegi / Spring Security插件使用Grails构建Web应用程序。

如果页面显示当前登录用户的详细信息,我只想显示“编辑”链接。

例如,id = 44的登录用户正在查看页面'localhost:8080 / app / user / show / 44'

我尝试过以下但是没有用。关于如何使这项工作的任何想法,或者是否有一些我错过的非常简单的方法?

<g:isLoggedIn>
    <g:if test="${person.id == loggedInUserInfo(field='id')}">
        <g:link controller="user" action="edit" id="${person.id}">Edit</g:link>
    </g:if>
</g:isLoggedIn>

1 个答案:

答案 0 :(得分:2)

我不知道这个问题是否只是一个拼写错误,但应该用地图调用loggedInUserInfo。

你在方法调用中进行了一个赋值,这导致只为logInUserInfo赋予值'id'

而不是field ='id'应该说字段'id'

<g:isLoggedIn>
    <g:if test="${person.id == loggedInUserInfo(field : 'id')}">
        <g:link controller="user" action="edit" id="${person.id}">Edit</g:link>
    </g:if>
</g:isLoggedIn>