模型或控制器中的代码

时间:2014-08-22 23:12:09

标签: node.js design-patterns model-view-controller sails.js geddy

这是MVC模型的设计模式问题。

我正在使用GeddyJs(用于Node.js),但它与Sails.js的模式相同,等等。

有时我会说到一点,我不知道是否应该将代码放入Controller或模型中。

例如:

我有一个SerialKey模型,其中每个序列都应该有一个唯一的生成ID,相应于我的算法(比方说,像blue cat这样的随机名称,nice car ...)

这是生成,检查它是否存在于数据库中,插入,应该由Controller或模型完成的过程吗?

因为正如我所看到的,每个create方法都应遵循这种模式,这意味着它应该在Model上。但是,因为它是逻辑的东西,应该在Controller ......

在这些情况下该怎么办?什么地方我把它,如果它的工作,它没关系?

1 个答案:

答案 0 :(得分:1)

  

这是生成,检查它是否存在于数据库中,插入,应该由Controller或模型完成的过程吗?

模型。我更喜欢"脂肪模型,瘦身控制器"设计,虽然当然在这里有不同的意见。我将控制器视为"粘合代码"而且他们更难测试,因为他们在输入和输出方面都有合作者。因此,保持他们瘦。生成默认值,确保模型中存在唯一性和其他面向数据的逻辑等约束。