1

我正在使用 CodeIgniter 开发一个带有 CRUD 管理面板的简单应用程序。我的一个模型有 5 个可选图像,所以当我创建一个新寄存器时,应用程序应该检查用户输入的图像数量,正确上传和存储它们。

目前,处理上传和存储的代码在我的控制器中。但是,我已经阅读了很多关于 MVC 的内容,有人说控制器应该尽可能,所以我想知道将代码移到模型中是否是个好主意。

你怎么看?

4

2 回答 2

2

好吧,是的,在 CI 示例(用户指南)中,文件上传逻辑放置在控制器中,但我更喜欢将此类代码放置在模型中。根据 MVC,控制器可以被认为是应用程序的“中间人”。它与用户一起工作,获取数据,然后与模型一起工作以获取适当的数据或计算,然后与视图一起工作以向用户显示响应。

模型负责保存与它所代表的任何内容相关的函数和变量,例如上传用户图像、获取用户信息、图像等的函数。所以我更喜欢在模型中添加文件上传代码而不是控制器。

于 2012-10-02T12:09:00.910 回答
2

你是在自问自答。它应该在模型中。也就是说,模型不应使用任何全局或超全局变量。由控制器将 $_FILES[..] 更改为模型可以使用的文件名。

于 2012-10-02T12:10:05.187 回答