Редактирование моей собственной страницы пользователя в Grails - PullRequest
0 голосов
/ 05 августа 2009

Я создаю веб-приложение с Grails, используя плагин Acegi / Spring Security.

Я хочу показывать ссылку «Редактировать» только в том случае, если на странице отображаются сведения о текущем вошедшем в систему пользователе.

Например, вошедший в систему пользователь с 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 Ответ

2 голосов
/ 10 августа 2009

Я не знаю, является ли это опечаткой в ​​этом вопросе, но loggedInUserInfo следует вызывать с картой.

вы делаете присваивание в вызове метода, в результате чего присваивается только значение id для loggedInUserInfo

вместо 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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...