我的Grails代码有一个搜索功能,执行findAllBy查询后重定向到另一个控制器操作:
def results = Foo.findAllByBar(baz)
redirect(action: "result", params: [results: results])
findAllByBar方法返回一个包含模型的ArrayList,这是预期的结果,但是在重定向后,接收的动作得到了一个String数组。更糟糕的是,当只有一个结果时,它甚至没有得到一个数组,它只得到了一个字符串。
考虑到我必须在接收视图中遍历结果,如果使用字符串来做这件事,它会逐个打印每个字母。我们都可以认为这可能不是理想的行为。