Проверка, принадлежит ли объект определенного типа в GSP - PullRequest
2 голосов
/ 30 ноября 2011

У меня есть список доменных объектов в представлении GSP и я хотел бы проверить, есть ли какой-либо из них определенного типа:

Class Equipment {}
Class Loader extends Equipment {}

... в поле зрения:

<g:each in="${Equipment.list()}" var="e">
   ... check if e is a Loader....
</g:each>

Я пытаюсь проверить, является ли фрагмент GSP для построения навигационного меню, и задаюсь вопросом, является ли это даже подходящим местом для регистрации.

Ответы [ 2 ]

9 голосов
/ 30 ноября 2011

Если вы создаете логику в комплексе GSP, вам следует подумать о создании taglib.Это тоже будет легко тестировать - GSP необходимо тестировать с помощью функциональных тестов и работающего веб-сервера, но вы можете тестировать библиотеки тегов с помощью интеграционных тестов.

5 голосов
/ 30 ноября 2011

Вы можете попробовать:

<g:each in="${Equipment.list()}" var="e">
     <g:if test="${e instanceof your.package.Loader}">Do anything</g:if>
</g:each>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...