Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Grails数据列表检索最佳实践_Grails - Fatal编程技术网

Grails数据列表检索最佳实践

Grails数据列表检索最佳实践,grails,Grails,我想知道在Grails中哪一种被认为是更好的实践: 1) 在控制器中,使用findBy方法检索数据并返回相应视图的映射以进行渲染-例如Users.findByLogin()-或 2) 让视图使用g:findAll-e.g迭代数据。 始终使用控制器创建模型您的视图将呈现。数据源可以是服务或GORM调用(例如findBy)。始终使用控制器创建模型您的视图将呈现。数据源可以是服务或GORM调用(例如findBy)。选项1,绝对不是#2。如果出于任何原因,您需要在该层执行此操作,只需将id或您的案例名称

我想知道在Grails中哪一种被认为是更好的实践:

1) 在控制器中,使用findBy方法检索数据并返回相应视图的映射以进行渲染-例如Users.findByLogin()-或

2) 让视图使用g:findAll-e.g迭代数据。
始终使用
控制器创建
模型
您的
视图将呈现。数据源可以是
服务
或GORM调用(例如
findBy
)。

始终使用
控制器
创建
模型
您的
视图
将呈现。数据源可以是
服务
或GORM调用(例如
findBy
)。

选项1,绝对不是#2。如果出于任何原因,您需要在该层执行此操作,只需将id或您的案例名称“john”传递给标记库即可。然后taglib可以像Joshua在下面建议的那样注入一个服务,进行查找并将结果返回到您的显示器上。我真的不需要这样做。我很好奇g:findAll的真正用途以及我们可以合理地使用它。但很显然,这一切都归结为MVC模型1和MVC模型2,不是吗?选项1,绝对不是#2。如果出于任何原因,您需要在该层执行此操作,只需将id或您的名字“john”传递给标记库即可。然后taglib可以像Joshua在下面建议的那样注入一个服务,进行查找并将结果返回到您的显示器上。我真的不需要这样做。我很好奇g:findAll的真正用途以及我们可以合理地使用它。但很明显,这一切都归结于MVC模式1和MVC模式2,不是吗?