一开始我很抱歉这个标题 - 我不知道怎么称呼这个问题。
假设我有(简化)课程:
class Articles_Repository {
public function save(Article_Entity $article) {...}
public function find($id) {...}
// Other methods
}
class Article_Entity {
public $thumbnail_url;
public $title;
public $text;
...
}
我应该在哪里放置“更改缩略图” - 上传和裁剪特定文章缩略图的方法?进入存储库,实体或其他地方?
答案 0 :(得分:0)
我认为放置该方法的最佳位置是服务。我认为这不是文章实体对操纵图像的责任。存储库,甚至更少。文章只是声明它有一个缩略图,它不关心缩略图是如何生成的。
控制器应将上传的图像传递给服务,该服务将涉及其他要裁剪的对象,然后保存图像(图像存储库可能在此处工作)。然后缩略图网址将分配给文章。