Doctrine 1.2.4, PHP 5.3.3
表配置文件、流、事件
FK:事件 -> 配置文件多对一
FK:事件 -> 多对一流式传输
流
$this->hasMany('modelEvent as Events', array(
'local' => 'id',
'foreign' => 'stream_id'
));
轮廓
$this->hasMany('modelEvent as Events', array(
'local' => 'id',
'foreign' => 'profile_id'
));
事件
$this->hasOne('modelProfile', array(
'local' => 'profile_id',
'foreign' => 'id'
));
$this->hasOne('modelStream', array(
'local' => 'stream_id',
'foreign' => 'id'
));
关系不起作用:(
<?php
$event = new modelEvent();
$event -> merge ($data_event);
$event -> modelProfile -> merge($data_profile);
$event -> modelStream -> merge($data_stream);
$event -> save();
?>
您需要使用 setRelation() 方法将关系数据正确添加到模型中。
例如:
$profile = new modelProfile();
$profile->fromArray($arrayOfData); //you can optionally populate the new model with an array of values. Values with keys that don't exist in the model will be ignored.
$event = new modelEvent();
$event->setRelation('modelProfile', $profile);
$event->save();