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")
}
プロバイダーと学生がすでにログインしているときにログインページにアクセスしようとすると、プロバイダーと学生をそれぞれ「ホーム」に送りたいと思います。何らかの理由で(おそらく私のブール論理)、機能せず、作成しませんリダイレクトに。
何か案は?
ありがとう