提问者:小点点

百里香叶:在th:if中不等同表达


ThymeLeaf很新,但在我正在处理的项目中遇到了问题。在日志中出现以下错误:

Exception evaluating SpringEL expression: "!searchResults.results.empty"

查看有问题的代码是:

<th:block th:if="${!searchResults.results.empty}">

我假设感叹号(!)的位置不正确。我已经尝试过:

<th:block th:if="${not searchResults.results.empty}">

但是同样的错误评估。有人能帮我如何否定支票吗?


共1个答案

匿名用户

假设从您粘贴的代码来看,您想实现一个检查,其中Thymeleaf检查对象中的空值。为此:---

<div th:if= "${searchResults.results != null}">

 <div th:if= "${searchResults.results != ''}">

另外,或者你可以做的是 - 检查你的控制器本身是否为空或没有任何值,并在你的html页面上发送响应,然后根据Thymeleaf上的响应进行检查,像这样:- - -

1.)您的控制器:-

    List ls = //some data from you DAO
    if(ls.isEmpty()){
         model.addAttribute("response", "NoData");
    }else{
         model.addAttribute("response", ls);
    }

然后在你的Thymeiaf上:---

<th:block th:if="${response=='NoData'}"> No Data Found </th:block>