提升对登录用户的跟踪

发布于 2024-10-10 05:13:18 字数 615 浏览 0 评论 0原文

我在 Boot.scala 中定义了这样的站点地图

   def sitemap() = SiteMap(
      Menu(S ? "Home") / "index",
      Menu(S ? "Login") / "login",
      Menu(S ? "Do Logged in Stuff") / "loggedinstuff"  >> If( () => loggedInUser.is != Empty, "You must be logged in") )

另外,我在 Boot.scala 中定义了一个 LoggedInUser,如下所示

object loggedInUser extends SessionVar[Box[String]](Empty)

当我有用户登录时,我希望他们将我的 LoggedInUser 更改为他们成功登录的用户名。

  • 这是处理登录用户的好方法吗?
  • 我应该在哪里保存 LoggedInUser 对象。启动.scala?其他地方?
  • 我如何更新loggedInUser,以便他现在可以显示“loggedinstuff”页面?

I have a sitemap defined like this in Boot.scala

   def sitemap() = SiteMap(
      Menu(S ? "Home") / "index",
      Menu(S ? "Login") / "login",
      Menu(S ? "Do Logged in Stuff") / "loggedinstuff"  >> If( () => loggedInUser.is != Empty, "You must be logged in") )

Also I have a loggedInUser defined in Boot.scala like this

object loggedInUser extends SessionVar[Box[String]](Empty)

When I have a user log in, I want them to change my loggedInUser to be the username that they successfully logged in as.

  • Is this an okay way to deal with logging in users?
  • Where should I keep my loggedInUser object. Boot.scala? Somewhere else?
  • How do I update loggedInUser so that he will now work to show the "loggedinstuff" page?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

花伊自在美 2024-10-17 05:13:18

我能够通过像这里这样的操作来让它工作

Scala 和Lift 和 SessionVar 会丢失其内容

创建此对象

object SessionState {

   object loggedInUserName extends SessionVar[Box[String]](Empty)
}

,然后执行此操作

SessionState.loggedInUserName(Full(username))

I was able to get it to work by doing like here

Scala and Lift and SessionVar that loses it contents

Made this object

object SessionState {

   object loggedInUserName extends SessionVar[Box[String]](Empty)
}

and then did

SessionState.loggedInUserName(Full(username))
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文