Security 如何使用安全模块检查用户是否从视图连接

Security 如何使用安全模块检查用户是否从视图连接,security,view,module,playframework,Security,View,Module,Playframework,如果我的标题不清楚,我正在使用安全模块: (安全控制器位于(标准)控制器包中) 我的main.html模板中有以下内容: #{if Security.isConnected != true} <a href="#" id="loginSlider">Login</a> #{/if} #{else} <a href="/logout">Logout</a> #{/else} #{if Security.isConnected!=t

如果我的标题不清楚,我正在使用安全模块:

(安全控制器位于(标准)控制器包中)

我的main.html模板中有以下内容:

#{if Security.isConnected != true}
    <a href="#" id="loginSlider">Login</a>
#{/if}
#{else}
    <a href="/logout">Logout</a>
#{/else}
#{if Security.isConnected!=true}
#{/if}
#{else}
#{/else}
它似乎不起作用,因为“安全性”在此为空。 我发现它在playframework.org上的文档记录相当糟糕

[编辑] 我尝试过的事情: 在控制器前面添加@:#{if@Security.isConnected!=true} 以包名作为前缀:#{if@controllers.Security.isConnected!=true}

我已经通过导航到一个安全页面来验证我是否确实登录了

[编辑二] 找到了一个可行的解决办法,但我不喜欢。 基本上,安全控制器方法isConnected执行以下操作:返回session.contains(“用户名”)。 因此,我可以在我的视图中进行检查:

{ifnot session.contains(“username”)}

但这不是最佳解决方案…

{ifnot controllers.Security.isConnected()}
#{ifnot controllers.Security.isConnected()}
    <a href="#" id="loginSlider">Login</a>
#{/ifnot}
#{else}
    <a href="/logout">Logout</a>
#{/else}
#{/ifnot} #{else} #{/else}