我觉得我正在垄断 Scala/Lift 的堆栈,所以我很抱歉,但问题不断出现。这是最新的。
我正在尝试将访问 /login/* 中的任何内容限制为尚未登录的用户。
这是我尝试的方法:
val entries = Menu(Loc("Home", List("index"), "Home")) :: //login stuff
Menu(Loc("loginBase", ("login"::""::Nil)->true, "Login Base", Hidden, anyLoggedIn))::...
这就是 SiteMap 中的条目。然后我在 Boot.scala 中定义 anyLoggedIn,如下所示:
val anyLoggedIn = If(() => !(Student.loggedIn_? || Provider.loggedIn_?),
if (sessionLoginType.is map {_ == StudentLogin} openOr false)
{
println("student")
RedirectResponse("studentHome")
}
else
{
println("provider")
RedirectResponse("providerHome")
}
我想分别将提供者和学生发送到他们的“家”,当他们尝试访问任何登录页面时,他们已经登录。出于某种原因,(可能是我的布尔逻辑),它永远不会工作,我也永远不会成功到重定向。
有任何想法吗?
谢谢