我理解业务逻辑属于模型,应用逻辑属于控制器。请有人澄清哪些业务逻辑是包括的,哪些是不包括的,哪些是应用程序逻辑做的和不包括的。考虑诸如重定向、确认对话框等。
例如:
/**
* Removes a product
* @param product
*/
_this.remove = function(product){
if(confirm('Are you sure you want to remove "' + product.product_name + '"?')){
var idx = _this.currentProductsOrdered.indexOf(product);
_this.currentProductsOrdered.splice(idx, 1);
}
};或者应该在控制器中有确认对话框,然后调用remove方法?
发布于 2015-06-04 03:55:21
“不幸的是,务实的回答是:‘视情况而定’。”MVC模型不一定是“被破解的所有东西”。
尽管如此,我还是建议你可以有意义地按照这样的思路来划分问题:“‘用户界面’.相对于‘不’”
例如:“与Gentle用户的整个交换,无论是什么,以及执行过程中可能涉及的技术阴谋,”可能属于“用户界面==控制器”。
最终,用户将提交一个操作。“好吧,用户真的想让这个产品消失。就这样吧。”
现在你正在接触模型层,并告诉他,“这样就行了!”在这一点上,给模型层的指令是“命令命令”。
(当然,模特可能会回答:“不!我拒绝!”在这种情况下,您必须返回用户界面。)
基本上,在我看来,"Controller ==用户界面“和"Model ==实际上会影响数据。”但是:“这是一个指南。”只是不是一成不变的。
https://stackoverflow.com/questions/30634023
复制相似问题