복붙노트

[SPRING] Thymeleaf : 속성 및 속성이있는 경우 텍스트 표시

SPRING

Thymeleaf : 속성 및 속성이있는 경우 텍스트 표시

속성과 속성이 존재하는 경우 속성 속성의 내용을 표시하는 간단한 방법이 thymeleaf에 있습니까? 내 HTML 페이지에 "summary"속성과 함께 "error"속성이있는 경우 표시하고 싶습니다.

<span th:text="${error.summary}">error summary</span>

"error"속성이 없으면 다음 오류가 발생합니다.

org.springframework.expression.spel.SpelEvaluationException : EL1007E : (pos 0) : 'summary'필드 또는 속성을 null에서 찾을 수 없습니다.

현재 나는 다음과 같은 방법을 사용하고 있는데, 이는 너무 복잡해 보입니다.

<span th:if="${error != null and error.summary != null}"><span th:text="${error.summary}">error summary</span></span>

그것을 달성하는 더 쉬운 방법이 있습니까?

해결법

  1. ==============================

    1.확실한! th : ​​text 속성과 연관된 프로세서가 th : text 속성과 연결된 우선 순위보다 더 높은 우선 순위를 가지므로 먼저 th : text 속성이 평가됩니다. 따라서 다음과 같이 작성할 수 있습니다.

    확실한! th : ​​text 속성과 연관된 프로세서가 th : text 속성과 연결된 우선 순위보다 더 높은 우선 순위를 가지므로 먼저 th : text 속성이 평가됩니다. 따라서 다음과 같이 작성할 수 있습니다.

    <span th:if="${error != null && error.summary != null}" th:text="${error.summary}">Static summary</span>
    

    다음을 사용하여 단축 할 수도 있습니다.

    <span th:text="${error?.summary}">Static summary</span>
    

    그러나이 경우에는 요약이 존재하는지 여부에 관계없이 span 태그가 생성됩니다. 이는 약간 추한 것입니다.

    조건식에 대한 자세한 내용은 여기를 참조하십시오.

  2. from https://stackoverflow.com/questions/21529085/thymeleaf-show-text-if-the-attribute-and-property-exists by cc-by-sa and MIT license