我在GSP视图中有一个域对象列表,并想检查它们中是否有特定类型:
Class Equipment {}
Class Loader extends Equipment {}
...在视图中:
<g:each in="${Equipment.list()}" var="e">
... check if e is a Loader....
</g:each>
我正在尝试检查是否有GSP片段来构建导航菜单,并想知道这是否是正确的检查位置。
答案 0 :(得分:9)
如果您在GSP复合体中制作逻辑,则应考虑创建一个taglib。它也很容易测试 - GSP需要通过功能测试和正在运行的Web服务器进行测试,但您可以使用集成测试来测试taglib。
答案 1 :(得分:5)
您可以尝试:
<g:each in="${Equipment.list()}" var="e">
<g:if test="${e instanceof your.package.Loader}">Do anything</g:if>
</g:each>