как сопоставить контроллеры Spring с их представлениями thymeleaf(intellij14)
Я пытаюсь настроить spring boot thymeleaf и intelij, и по большей части прибил его, но я не могу, кажется, связать контроллеры с их представлениями, так как intellij anoyingly держит это воспроизведение следующего сообщения, и автоматическое завершение системы не работает:
Cannot Resolve 'varName'
Мой контроллер выглядит так: "main / java/..../контроллер.java "
@Controller
public class CardsController {
@RequestMapping(value="/card/{id}",method = RequestMethod.GET)
public String viewCardAction(@PathVariable("id") Card card,Model model){
model.addAttribute("card",card);
return "cards/view";
}
}
А это мой макет вида "main / resources / cards / view/cards/view":
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head lang="en">
<meta charset="UTF-8"/>
<title th:text="${card.name}"></title> <!-- this line shows the message -->
</head>
<body>
<div th:text="${card.name}"></div> <!-- this line shows the message -->
</body>
</html>
Это то, что intelij, есть все еще не работает для этого, или я пропустил какую-то конфигурацию
Примечание: он работает и компилируется, просто хочу enlable автозаполнения
2 ответов:
Похоже, это ошибка в Intellij.
Вот ссылка на youtrack: https://youtrack.jetbrains.com/issue/IDEA-132738
Он еще не получил большого внимания от разработчиков JetBrains, поэтому вы можете добавить свои комментарии или проголосовать там.
Поскольку он все еще не решен и люди могут прийти сюда путем поиска, Вот обходной путь, упомянутый Чжао синьцзином в ссылке, опубликованной в принятом ответе:
<!--/*--><!--@thymesVar id="loginFormBean" type="sample.system.login.LoginFormBean"--><!--*/--> <form id="formMain" class="form-horizontal" action="#" data-th-action="@{/login}" data-th-object="${loginFormBean}" method="post"> as thymeleaf comment, nothing be left in html outputВы также можете использовать его для указания коллекций, например
<!--/*--><!--@thymesVar id="names" type="List<String>"--><!--*/--> <!--/*--><!--@thymesVar id="name" type="String"--><!--*/--> <li th:each="name: ${names}" ... />
Comments