我在Symfony2应用程序(使用Doctrine)中工作,其中包含以下实体:
C(name,description,isDeleted)
A-> B-&以及c
应用程序的一个要求是我们必须在数据库中保留所有行,并将它们设置为已删除,以防我们需要从数据库中删除A,B或C.
目前,每个实体都有一个Manager服务,允许我们管理和使用这些实体。
但是当我们需要删除实体A的一个元素(isDeleted = true)时,我们必须触发一个动作来设置为isDeleted = true所有子关系,在这个特殊情况下我们需要设置为删除B和C 。
是否有任何设计模式或良好实践(使用事件调度员,学说生命周期事件或服务方式)来实现这一目标?如果我们需要添加更多关系,以保持代码清洁和可维护。
感谢。
答案 0 :(得分:1)