所以在英语中,这种关系听起来像“这个事件与以下其他事件有关”。
我的第一直觉是创建一个EventEvent
模型,有一个first_event_id
字段和一个second_event_id
字段。然后我会在模型中定义以下两个关系Event
:
$this->hasMany('Event as FirstRelatedEvents', array('local' => 'first_event_id', 'foreign' => 'second_event_id', 'refClass' => 'EventEvent'));
$this->hasMany('Event as SecondRelatedEvents', array('local' => 'second_event_id', 'foreign' => 'first_event_id', 'refClass' => 'EventEvent'));
但我宁愿不必在Event
模型上使用两个关系。有一个更好的方法吗?