单向和双向关系关系的区别

nev*_*ame 21 sql database orm doctrine

我想知道这两个词是什么意思.

我在Doctrine的文档中遇到过它们,但我无法理解它们的含义.

Cha*_*ana 46

这与通用(在应用程序域内)是否会试图从另一方访问关系的两个方面有关...产品的发票可能是单向的,因为我们经常想知道产品是什么发票,您不太可能想知道包含给定产品的所有发票.

另一方面,产品的商店是双向的,因为我们很容易想要访问特定商店的所有产品,或者找到销售特定产品的所有商店.

双向不仅限于关系是多对多关系的地方.如果在我们的域模型中,员工对象需要能够访问员工的主管对象,那么员工与主管之间的关系可以轻松实现双向,当然,主管对象包含列出其所有指定员工的属性.

一对多双向: 州和城市,其中州有城市的收集财产,城市有国家财产

多对多单向: 公交车和骑士,其中总线具有车手的集合属性,但骑士并没有收集楼盘,所有巴士骑手骑了(应用程序不关心).

多对多双向: 人类,每个人都有朋友财产,作为此人与朋友共处的其他人物的集合;
或者......
艺术家和专辑课程,其中艺术家有专辑集合,专辑有艺术家集合(专辑是多个艺术家的曲目汇编)