我有一个名为Message
的模型,这是我网站上的内部通知。
我有一个控制器,RegistrationController
可以处理新人注册我的网站。发生这种情况时,我会向所有用户发送Message
。
这是所涉及的代码的样子:
public static createMessage($receiver, $content)
{
$message = new Message;
$message->receiver = $receiver;
$message->content = $content;
$message->save(false);
}
在RegistrationController.php
foreach($users as user)
Message::createMessage($user->ID, $content);
什么是最好的方法,它不会违反mvc?
在Message模型中,我添加了createMessage()
函数。它不需要进口。
或者我创建一个MessageController
并在里面添加该功能?如果我执行版本2,那么我需要include MessageController
中的RegistrationController
。
更好的主意。
哪个版本可以产生更好的代码,可以更好地维护?请量化您的答案以避免意见。
答案 0 :(得分:0)
做MVC是一种编程风格。 放置逻辑没有限制。您可以将它放在模型或控制器中。
最适合您的工作方式,使用它。
我通常在Controller中输入通过接口与用户交互的逻辑。 (从接口获取值)
并提供有助于业务规则的逻辑模型。 (使用接口和数据库中的值执行操作)
如果您决定将Message逻辑作为Controller,则不需要包含MessageController。
但请确保在/config/main.php中包含以下内容:
'application.controllers.*'