![]() |
1
3
存储库模式定义相当松散,不一定与聚合模式有任何关系。但是,如果您订阅DDD方式,那么是的,存储库对于聚合是唯一的。 所以让我们从DDD的角度来看看这个。DDD表示,聚合中的对象可以引用另一个聚合根,但聚合中的对象只能通过根访问。确定聚合的经验法则是删除根时应删除的内容。但是,与大多数方法论相比,DDD更不鼓励使用关系,因为关系存在于一个域中,它不需要存在于您的域模型中,所以请记住这一点。 在您的情况下,当您删除一个帖子时,我假设您也会删除评论,但不会删除创建该帖子的用户或对其发表评论的用户。因此,定义post/comment聚合是正确的,但是将用户分组到该聚合中是没有意义的。 用户作为其自己的聚合,可以包含与其所有文章的关系,因为post是聚合根。您还可以在PostRepository上实现此方法,以获取给定用户的所有文章。希望有帮助! |
![]() |
Karlo · PHP Sqlite PDO最新版本 3 月前 |
![]() |
Malte · 检查远程服务器上是否存在文件(使用PHP)[关闭] 3 月前 |
![]() |
Bard.Mus · 迁移后的数据库字符集环境 4 月前 |