理论上可以使用从/到类成员的箭头来完成。然而,它并不像你期望的那样工作:
@startuml
' hide the spot
hide circle
' avoid problems with angled crows feet
skinparam linetype ortho
entity "Entity01" as e01 {
* e1_id : number <<generated>>
__
* name : text
description : text
}
entity "Entity02" as e02 {
* e2_id : number <<generated>>
__
* e1_id : number <<FK>>
other_details : text
}
entity "Entity03" as e03 {
* e3_id : number <<generated>>
__
e1_id : number <<FK>>
other_details : text
}
e01 ||.left.o{ e02::e1_id
e01 |o.right.o{ e03::e1_id
@enduml
我会称之为PlantUML中的一个bug,因为线条结束于实体的中心而不是其边缘。你可以通过报告来尝试修复它。然而,我怀疑你无法得到像你问题中那样好的图表结果。@startuml
' hide the spot
hide circle
' avoid problems with angled crows feet
skinparam linetype ortho
left to right direction
entity "Entity01" as e01 {
* e1_id : number <<generated>>
__
* name : text
description : text
}
entity "Entity02" as e02 {
* e2_id : number <<generated>>
__
* e1_id : number <<FK>>
other_details : text
}
entity "Entity03" as e03 {
* e3_id : number <<generated>>
__
e1_id : number <<FK>>
other_details : text
}
e01::e1_id ||.up.o{ e02::e1_id
e01::e1_id |o.down.o{ e03::e1_id
@enduml
但是,我还是怀疑这个方法能否适用于你的例子。你可以试试看!
编辑:看一下这个例子,你可以发现它与你提到的例子非常接近。我认为关键是从左到右的方向
。