tutorial operator formulario elvis curso spring thymeleaf spring-el

spring - operator - Thymeleaf: muestra el texto si el atributo y la propiedad existen



thymeleaf spring boot (1)

¡Por supuesto! Dado que el procesador asociado con el atributo th:if tiene una prioridad más alta que el asociado con el atributo th:text , se evaluará primero. Así puedes escribir:

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

Incluso podrías acortarlo usando:

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

Pero creo que en este caso, ya sea que el resumen exista o no, se creará la etiqueta span, que es un poco fea.

Ver más información sobre expresiones condicionales here .

¿Hay una forma sencilla en la hoja de timón para mostrar el contenido de una propiedad de atributo si la propiedad y el atributo existen? Si hay un atributo "error" con una propiedad "resumen" en mi página html, me gustaría mostrarlo:

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

Si no hay ningún atributo "error" se genera el siguiente error:

org.springframework.expression.spel.SpelEvaluationException: EL1007E:(pos 0): Field or property ''summary'' cannot be found on null

Actualmente estoy usando el siguiente enfoque, que parece demasiado complicado.

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

¿Hay una manera más sencilla de lograr eso?