你可以在Grails中使用动态查找器或通过脚手架分组表吗?

时间:2010-08-12 15:51:24

标签: search list grails dynamic scaffold

我正在使用几乎完全支架的非常,非常快速和肮脏的应用程序来完成它。这仅供内部使用,它只是替换电子表格,所以虽然我知道我不应该依靠脚手架进行实际生产使用,但我仍然打算在可以提高效率的地方使用它们(...只是想要确保我们不会被不可避免的问题脱离轨道!)。

我很好奇的是因为脚手架可以做快速和脏的CRUD,你可以做搜索的动态查找器,有没有办法用约束动态显示脚手架的“列表”动作(即显示所有项目在这个“用户”创建的列表中?那对我来说没问题......

或者,Grails中是否有任何可用的“分组”表格。基本上来自脚手架的“列表”操作,但是按特定属性分组(再次考虑由创建它们的用户对所有项目进行分组)。

任何帮助都会受到赞赏 - 我一直在搜索谷歌和一些没有运气的书籍,但是在我解除这个概念并手工编写之前,我想先咨询StackOverflow社区。谢谢!

1 个答案:

答案 0 :(得分:1)

我们在Grails应用程序中也做了同样的事情,而且相对简单:

  1. 在list.gsp中创建一个新表单,引用列表操作<g:form action="list" method="post">
  2. 在该表单中,声明一个包含您要搜索的字段的表:
  3. <div class="buttons"> <span class="button"><g:submitButton name="list" class="search" value=" ${message(code: 'default.button.search.label', default: 'Search')}"/></span> </div>

    1. 在列表操作中,构建查询(使用findAll,findWhere,..无论您喜欢什么)并将其返回到页面:
    2. [wardInstanceList : Ward.findAll(whereClause, [max: params.max, offset: params.offset]) , wardInstanceTotal : (int) Ward.executeQuery("select count(*) " + whereClause).get(0)]

      whereClause类似于:"from Ward where ward = 'something' and room = 'something else'"