Intellij无法识别HTML中的模型变量。如何解决模型变量。我对这个问题一无所知。
这是我的控制器
[('payout_value', 'sum')]
这是我的" index.html"
@Controller
public void someController {
@RequestMapping("/")
public String someMethod() {
model.addAttribute("message", "message");
return "index";
}
当然在我的html标签中我使用了thymeleaf:
<p th:text="${message}"> </p>
问题出在我的<html xmlns:th="http://www.thymeleaf.org" xmlns="http://www.w3.org/1999/html">
我看到红色波浪线说&#34;无法解决&#34;消息&#34;可变...&#34;
答案 0 :(得分:2)
IntelliJ几乎必须在后台编译代码才能自动(并准确地说,因为你可以有多个使用同一模板的方法)来解析变量。
我从来没有给过这样的提示,但在看完你的评论之后你发现这条摇摆不定的线条很烦人,我决定建议:
禁用提示。
我觉得发布这个答案绝对野蛮,请原谅我
答案 1 :(得分:0)
项目结构(Ctrl + Alt + Shift + S)-> 模块->单击加号图标,然后添加一个 Web模块到项目中,请确保“部署说明” 为空,并在“ Web资源目录” 部分中确保您的 src文件夹您项目的strong>设置在 // 上。
这对我有用
答案 2 :(得分:0)
对于IntelliJ的最新版本:
将光标置于变量上,按Alt-Enter,您将看到一个菜单选项,以“在注释注释中声明外部变量”。选择此选项后,您将获得一个注释模板,其光标位于键入变量数据类型的位置。
完成后,您将看到以下内容:
<!--/*@thymesVar id="productIds" type="java.util.Map"*/-->
<div data-th-each="p : ${productIds}">
Alt-enter菜单在${#maps.isEmpty(productIds)}
之类的表达式中似乎不起作用。在这种情况下,手动创建注释可能会使UI摆脱“未解决”的指示。
答案 3 :(得分:0)
这些红线可能很烦人,我刚刚删除了 www。来自我的百里香叶,它起作用了
在您的 .html thymeleaf 文件中,将第 1 行替换为第 2 行
第 1 行: <html xmlns:th="http://www.thymeleaf.org">
第 2 行: <html xmlns:th="http://thymeleaf.org">