Node.js SailsJS中薄型控制器的设计

Node.js SailsJS中薄型控制器的设计,node.js,model-view-controller,express,sails.js,Node.js,Model View Controller,Express,Sails.js,我是MVC编程新手。目前我有一个用户模型,只有一个属性timespunt。我正在使用d3.js在我的一个视图中绘制每个用户花费的时间。目前我实现这一点的方法是将搜索数据库的所有逻辑结合起来,并在UserController中以正确的格式获取数据 从我在sails文档上读到的内容来看,他们尽可能推荐“瘦”控制器。我还可以在哪里以更可重用的方式合并所有这些搜索/格式化代码?您应该签出 “服务”类似于控制器操作,但通常用于在用户发送请求和服务器发回响应之间不必发生的事情 你应该退房 “服务”类似于控制

我是MVC编程新手。目前我有一个
用户
模型,只有一个属性
timespunt
。我正在使用d3.js在我的一个视图中绘制每个用户花费的时间。目前我实现这一点的方法是将搜索数据库的所有逻辑结合起来,并在
UserController
中以正确的格式获取数据

从我在sails文档上读到的内容来看,他们尽可能推荐“瘦”控制器。我还可以在哪里以更可重用的方式合并所有这些搜索/格式化代码?

您应该签出

“服务”类似于控制器操作,但通常用于在用户发送请求和服务器发回响应之间不必发生的事情

你应该退房

“服务”类似于控制器操作,但通常用于在用户发送请求和服务器发回响应之间不必发生的事情


控制器应为精简型,因为它们是控制器:) 当您开始使用MVC框架将逻辑放入控制器时,这是一个非常常见的错误,但它确实不应该存在

如果您正在处理存储在数据库中并与您的模型相关的数据,那么我建议此逻辑应该在模型中。正如许多人所想,模型不应该尽可能薄:)


当然,如果它不适合那里,正如Yann所建议的,使用服务。你的应用程序逻辑的一个很好的部分应该在那里

控制器应精简,因为它们是控制器:) 当您开始使用MVC框架将逻辑放入控制器时,这是一个非常常见的错误,但它确实不应该存在

如果您正在处理存储在数据库中并与您的模型相关的数据,那么我建议此逻辑应该在模型中。正如许多人所想,模型不应该尽可能薄:)

当然,如果它不适合那里,正如Yann所建议的,使用服务。你的应用程序逻辑的一个很好的部分应该在那里