在同一个模型中建立两重关系,不需要时删除关系

参考:http://book.cakephp.org/cn/view/851/Multiple-relations-to-the-same-model
由于系统需要有站内信功能,故建立mails表,包括mail_id from_user_id to_user_id等等。
mail的模型:
var $belongsTo = array(
'Sender' => array('className' => 'User',
'foreignKey' => 'from_user_id',
'dependent' => false,
'fields'=> array('Sender.user_id','Sender.nickname'),
'order' => ''
),
'Recipient' => array('className' => 'User',
'foreignKey' => 'to_user_id',
'dependent' => false,
'fields'=> array('Recipient.user_id','Recipient.nickname'),
'order' => ''
)
);

控制器:
function sendbox() {
$this->Mail->unbindAndPushModels(
array('belongsTo' => array('Sender'))
);
//$brands = $this->Mail->find('all');
$this->set('mails',$this->paginate('Mail',array('Mail.from_user_id' => $this->Auth->user('user_id'),'Mail.status' => 1)));

}

Leave a comment

Your comment