Thymeleaf 登录和注销可见性问题
Posted
技术标签:
【中文标题】Thymeleaf 登录和注销可见性问题【英文标题】:Thymeleaf Login and Logout Visibility Problem 【发布时间】:2020-06-20 18:49:52 【问题描述】:我正在开发一个网站,并在此过程中使用 springboot 和 thymeleaf。问题是我在登录时似乎无法显示注销按钮。虽然我没有注销时显示了登录。我有两种类型的用户——用户和管理员。登录和注销应该适用于这两种类型的用户。下面是我在 html 中登录和注销的代码。我还附上了控制器中的内容。谢谢 menu.html 和 mycontroller.java
<a th:if="$userRole == 'null'">
<button type="button" class="btn btn-dark m-2">Logout</button>
</a>
<a th:unless="$userRole == 'null'">
<button type="button" class="btn btn-dark m-2">Login</button>
</a>
private void setUpNavBar(Model model)
String presentUserRole;
if (userSession.getUser() == null) presentUserRole = "noUser";
else presentUserRole = userSession.getUser().getRole();
model.addAttribute("userRole",presentUserRole);
System.out.println("setting up navigation bar:" + presentUserRole);
【问题讨论】:
【参考方案1】:问题是 userRole 永远不会变成“null”。如果您遵循 setUpNavBar,则 userRole 是“noUser”或角色 (userSession.getUser().getRole())。
所以用“noUser”替换“null”。
【讨论】:
我现在要试试。谢谢@Robson以上是关于Thymeleaf 登录和注销可见性问题的主要内容,如果未能解决你的问题,请参考以下文章
使用 Spring 安全性在 Thymeleaf 中的静态资源的可见性