几年后我回到了 Grails,发现效率比以往任何时候都好,但在 Fields 插件和“响应”方法中遇到了一些障碍。我创建了一个具有 hasMany 的域类,但不希望索引 View 与指向这些子项的链接杂乱无章。我可以通过放置 _table.gsp 模板并对其进行修改来消除该列,但是这适用于我不想要的全局。
我的下一个尝试是在 Controller 内的域对象上调用“列表”并仅“收集”我想要的列。当我将此结果传递给“响应”时, View 为空,但没有错误。
进一步挖掘我发现“响应”需要一个 PagedResultList,我收集它是一个列表的薄包装。但是我上面的步骤返回了一个 ArrayList。我看不到如何构造 PagedResultList 并将 ArrayList 传递给“响应”,但什么也没做。
我最终通过使用“渲染”和老式的手工构建 View 获得了所需的外观,但这似乎违背了“响应”和 Fields 插件的简单优雅的目的。
我错过了一些简单的东西吗?
最佳答案
如果你高兴generating the views对于您的域,您可以修改 index.gsp 并指定以下属性:
<f:table collection="${authorList}" properties="['name', 'city', 'dob']" />
您也可以使用“except”来指定要跳过的字段,docs here
关于Grails 3限制索引 View 中的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49575477/