Проблема с видимостью входа и выхода из Thymeleaf - PullRequest
1 голос
/ 08 марта 2020

Я занимаюсь разработкой веб-сайта и использую Springboot и Thimeleaf для этого процесса. Проблема в том, что мне не удается отобразить кнопку выхода из системы, когда я вошел в систему. У меня отображается логин, когда я не вышел из системы. У меня есть два типа пользователей - Пользователь и Администратор. Логин и выход из системы должны работать для обоих типов пользователей. Ниже мой код для входа в систему и выхода из системы html. Я также приложил то, что у меня есть в контроллере. Меню Спасибо. 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 Ответ

1 голос
/ 08 марта 2020

Проблема в том, что userRole никогда не становится 'нулевым'. Если вы следуете своему setUpNavBar, userRole - это либо «noUser», либо роль (userSession.getUser (). GetRole ()).

Поэтому замените «null» на «noUser».

...