Как я могу проверить, подключен ли пользователь из представления, используя модуль Secure - PullRequest
1 голос
/ 21 марта 2012

Я использую модуль Secure, если это не ясно из моего названия: http://www.playframework.org/documentation/1.2.4/secure

(Контроллер безопасности находится в (стандартном) комплекте контроллеров)

У меня есть это в моем main.html шаблоне:

#{if Security.isConnected != true}
    <a href="#" id="loginSlider">Login</a>
#{/if}
#{else}
    <a href="/logout">Logout</a>
#{/else}

И это, похоже, не работает, так как «Безопасность» здесь не имеет значения. Я обнаружил, что это довольно плохо документировано на playframework.org.

[EDIT] Вещи, которые я пробовал: Добавление @ перед Контроллером: # {if @ Security.isConnected! = True} Префикс с именем пакета: # {if @ controllers.Security.isConnected! = True}

Я подтвердил, что действительно вошел в систему, перейдя на защищенную страницу.

[EDIT2] Нашел обходной путь, который работает, но мне это не нравится. По сути, метод контроллера безопасности isConnected делает это: return session.contains ("username"). Так что я могу сделать эту проверку на мой взгляд:

#{ifnot session.contains("username")}

Но это не оптимальное решение ...

1 Ответ

0 голосов
/ 21 марта 2012
#{ifnot controllers.Security.isConnected()}
    <a href="#" id="loginSlider">Login</a>
#{/ifnot}
#{else}
    <a href="/logout">Logout</a>
#{/else}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...