在SailsJS中devise一个更薄的控制器

我是MVC编程的timespent 。目前我有一个属性timespentUser模型。 我使用d3.js来绘制每个用户在我的一个视图中花费的时间。 目前我正在实现这个方法是通过合并search数据库的所有逻辑,并在UserController中获取正确格式的数据。

从我在风帆上看到的文档,他们会尽可能地推荐“薄”控制器。 还有哪些地方可以将所有这些search/格式化代码以更加可重用的方式进行合并?

控制器应该很薄,因为它们是控制器:)当你开始使用MVC框架将逻辑放在控制器中时,这是一个非常常见的错误,但肯定不应该在那里。

如果您正在处理数据库中存储的与您的模型相关的数据,那么我build议这个逻辑应该在模型中。 许多人认为,模型不应该尽可能薄:)

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

你应该检查出Sails.js服务

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