这是我的模特
消息表:
message_id int, body varchar(50)
messages_replies表:
original_id int,reply_id int
正如您所看到的,我有一个消息表,每当用户写评论时,它都会保存在此处。但是当用户回复之前的评论时,我想在消息表中保存新评论,并在message_replies表中回复哪条评论。
我的问题是我不知道如何链接MessageTable.php中的表,因为它引用了同一个表。
这是我在MessagesTable.php中尝试过的:
$this->belongsToMany('Replies', [
'className' => 'Messages',
'foreignKey' => 'message_id',
'targetForeignKey' => 'original_id',
'joinTable' => 'messages_replies'
]);
它在MessagesController.php中失败
public function index()
{
$messages = $this->Messages->find('all',['contain' => ['Replies']]);
$this->set([
'messages' => $messages,
'_serialize' => ['messages']
]);
}