【发布时间】:2014-08-05 15:00:21
【问题描述】:
我还有一个关于 Kohana 以及我应该如何使用模型函数的问题。
我想将控制器功能的一部分移动到更合适的模型中,以便能够从其他控制器访问此功能。 (根据我目前所读到的内容,我得出结论,从不同的控制器调用控制器函数被认为是糟糕的架构)。 我的问题是,根据几种情况(即模型参数),此控制器功能会在不同的数据库表中创建一个日志条目并向某些用户发送电子邮件。
如果主要功能位于模型中,我应该如何创建此日志条目并发送邮件?我应该从第一个模型中实例化第二个模型,调用 log 函数,然后按照我从控制器中所做的那样发送邮件吗?
提前致谢。
【问题讨论】:
-
听起来你最好创建一个库类。这只是在应用程序的 classes/libraries 目录中创建的常规类。在库中,您的方法可以执行逻辑和调用模型,并且可以从任何控制器访问。
-
听起来很有趣。我会试试看。我对未来我应该在多个控制器中需要实现时使用库函数并且它不仅与模型相关吗?
-
你可以在网上搜索“repository”找到更多信息。这将所有数据库逻辑从您的控制器中移除,您可以在不同的控制器上重用这些方法。
标签: kohana kohana-3 kohana-3.3