无法从belongsToMany检索具有不同tablename的关系

时间:2015-02-09 00:09:33

标签: php laravel laravel-4 eloquent

我收到了以下表格:

| messages |   | likes      |
| id       |   | id         |
| content  |   | message_id |
               | user_id    |

我想从邮件中检索所有喜欢的内容。

目前我在Message型号上有这种关系:

public function likes()
{
    return $this->belongsToMany('App\Entities\Like', 'likes', 'message_id', 'id');
}

但是当我dd(Message::find($id)->likes()->get()->toArray());时,我得到了一个例外:

Syntax error or access violation: 1066 Not unique table/alias: 'likes'

1 个答案:

答案 0 :(得分:0)

您需要在Message模型和Like模型之间定义多个关系。

message.php

public function likes()
{
   return this->hasMany('App\Entities\Like');
}