所以我最近开始研究一个已经大部分编写的蛋糕2.0代码库。
它在组件中设置了复杂而强大的电子邮件系统。但是,有很多有效的案例可以从模型发送电子邮件,主要是作为向开发人员发送调试消息,并且似乎有一个规则,即模型无法正常访问组件。
我不想写另一个替代电子邮件功能,因为这不干,我希望共享功能。我也无法实例化一个新组件,因为它被设置为从一个在构造函数中接受控制器的类继承。
我不明白如何通过蛋糕哲学在理论上对这个应用程序进行重构。
答案 0 :(得分:0)
组件?以前的开发者做错了。正确的方法是使用CakeEmail和传输适配器。 The manual has a page about CakeEmail and how to write transports
它不仅仅是Cake中的规则,而且通常在MVC中模型不应该访问组件。事实上,以前的开发人员并没有注意到这一点,我认为应用程序的一般架构存在更多错误。