cannot resolve xxx,html里thymeleaf无法解析变量,但是能正常运行程序

cannot resolve xxx,html里thymeleaf无法解析变量,但是能正常运行程序,第1张

eg:h:each="map:${discussPosts} discussPosts有红色下划线,错误提示。

原因: 这是idea警告级别的问题,可以在idea设置中的inspection配置中降低下相应的警告级别。

解决方法:在idea设置里修改下Inspections的thymeleaf警告级别:

File->Settings->Eidter->inspections下搜索thymeleaf,修改Reports unresolved references and invalid Thymeleaf expressions警告级别为Warning。

先看结果——

页面源代码如下:

分析一下代码,经过检查index_config.php(Smarty连接文件)、index.php文件均无错,下面重点看看模板文件,可能原因就出在这个tpl文件上,出代码——

复制代码 代码如下:

{% config_load file="1.conf" section="style2" %}

<html>

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=utf-8">

<title>{% #title# %}</title>

</head>

<body bgcolor="{% #bgcolor# %}">{%$hello%}

{%*这是一个注释语句*%}

<br />

{%$array.0.0%}

</body>

</html>

Smarty不能将模板文件中的变量解析成相应的值,肯定是调用文件时的错误了,但看着写的代码也没错啊,和书上的、网上的几乎一模一样的,怎么会出错呢??

百思不得其解之际,突然发现,在调用变量时自己的代码比他们多了空格…………………………

删除空格,大功告成:

页面源代码

总结,在使用Smarty模板时,不要为了代码的美观和可读性而增加空格,这样Smarty不会把这些当成变量解析的,而会直接输出


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7618915.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-07
下一篇 2023-04-07

发表评论

登录后才能评论

评论列表(0条)

保存