我正在开发一个Grail的项目,该项目中有一些Domain对象没有保留在数据库中。它们通过REST API进行管理,因此所有CRUD操作都将使用此API而不是数据库完成。
关键是仍然可以使用一些有趣的Grails插件(比如使用Compass进行搜索)。
例如,管理域对象用户将使用REST API进行管理,因此当显示“用户”列表时,将在远程服务器上调用用于检索用户列表的REST方法。我希望这个用例足够清楚:)
我可以考虑几种设计方法,但我不确定什么是最好的:
提前致谢!
答案 0 :(得分:1)
我会在服务中包装REST交互,并从控制器调用服务。在这种情况下,服务将获得响应并创建其对象,将列表传递回控制器。控制器应该只处理传入的请求,调用应用程序组件并返回响应。
您似乎希望模型在其他应用程序中表示数据,这是一个好主意。由于您不需要GORM,您可能希望在应用程序的“groovy”文件夹中定义它们而不是域模型文件夹。然后我认为它们只是对象。
答案 1 :(得分:1)
我会使用src
文件夹中的非域对象 - 但是,需要检查是否可以使用上面提到的插件。
我想知道您希望从非持久化类中获取哪些域类功能?