目录访问是否应由模型或控制器处理?

时间:2012-08-26 23:59:49

标签: model-view-controller directory

我有一个应用程序,需要在简单的界面中添加和删除图像文件。控制器应该是直接删除这些文件的控制器,还是应该删除我的模型域中的文件?

我问,因为文件可以被视为一种“数据”。只是想知道约定是什么。

1 个答案:

答案 0 :(得分:2)

这取决于你的模型是如何设计的,但总的来说我认为这是模型的问题。

这是因为即使添加/删除现在只是一个普通的文件系统动作包装器,它也可能涉及未来的数据库操作/修订支持:这样控制器就不知道实际发生了什么。

for f in filesToDelete:

    f.delete();

endfor;

delete可能是:

public function delete()
{

    unlink(this.path);

}

public function delete()
{

    db::remove(this.path);  // or whatever

    unlink(this.path);

}

如果您需要批处理操作,只需对Folder / SmartFolder类进行建模即可执行。