Я пытаюсь предоставить следующую модель для каждой страницы, чтобы я мог проверить, зарегистрирован ли текущий пользователь, и, следовательно, контролировать элементы меню заголовка для каждой страницы, но Я не хочу всегда возвращать индекс. Есть ли способ вернуть себя?Springboot/Thymeleaf проверяет текущего пользователя от модели на каждой странице
@RequestMapping(value = "/**", method = RequestMethod.GET)
String index(Model model) {
Users user = usersRepository.findOne(1 L);
if (user != null) {
String currentRole = user.getRole().toString();
model.addAttribute("currentRole", currentRole);
// System.out.println("Current Role: " + currentRole);
} else {
model.addAttribute("currentRole", "ANONYMOUS");
}
return "index";
}
Мое меню:
<li th:switch="${currentRole}">
<!-- Is Employee, so show "My Requests" -->
<div th:case="EMPLOYEE">
<a href="#" th:href="@{/requests}">
<div style="float: left; margin-right: 10px;">My Requests</div>
<!-- Handle notifications here -->
<div style="overflow: hidden" id="circle">1</div>
</a>
</div>
<!-- Is Manager, so show "My Approvals" -->
<div th:case="MANAGER">
<a href="#" th:href="@{/requests}">
<div style="float: left; margin-right: 10px;">My Approvals</div>
<!-- Handle notifications here -->
<div style="overflow: hidden" id="circle">1</div>
</a>
</div>
</li>
<li><a href="#" th:href="@{/team}">My Team</a></li>
<!-- Is logged in, so don't show "Log In" -->
<li th:unless="${currentRole}">
<a href="/login" th:href="@{/login}" class="btn-login">Log In</a>
</li>
</ul>
Спасибо. Имеет ли значение, где я отношу этот класс к корню? – santafebound
Вам просто нужно поместить этот класс в каталог, который находится под автосканированием, или просто вместе с контроллерами – Andremoniy
Cool. Я сделаю это. – santafebound