0

一开始我很抱歉标题 - 我不知道如何称呼这个问题。

假设我有(简化的)类:

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;
   ...
}

我应该在哪里放置“更改缩略图” - 上传&裁剪&保存特定文章缩略图的方法?进入存储库、实体或其他地方?

4

1 回答 1

0

我相信放置该方法的最佳位置是在服务中。我不认为文章实体有责任操纵图像。存储库的,甚至更少。文章只是声明它有一个缩略图,它并不关心缩略图是如何生成的。

控制器应该将上传的图像传递给服务,该服务将涉及其他对象进行裁剪,然后保存图像(图像存储库可能在这里工作)。然后缩略图 url 将被分配给文章。

于 2012-11-14T10:10:20.603 回答