Laravel模型在两个表之间创建关系

我试图在两个表,用户和Laravel模型中的消息之间创建关系,因为用户可以将消息发送给另一个用户,以便我有两个外键(fromUser_id和toUser_id),如下图所示。Laravel模型在两个表之间创建关系

对于第一种关系是直接的,我将创建一个名为消息的功能

public function messages(){ 

return $this->hasMany('App\Models\Message', 'fromUser_id');

}

但是我不知道如何去尽可能我知道它的名字,第二关系应该也是消息,根据Laravel的标准命名,由于我们具有相同名称的第一个函数,这显然会发出错误。

public function messages(){ 

return $this->hasMany('App\Models\Message', 'toUser_id');

}

请让我知道我应该怎样命名它,以及这将如何影响模型。

回答:

嘛,你不应该使用简单messages的关系,而是使用receivedMessagessentMessages这样的:

public function sentMessages() 

{

return $this->hasMany('App\Models\Message', 'fromUser_id');

}

public function receivedMessages()

{

return $this->hasMany('App\Models\Message', 'toUser_id');

}

以上是 Laravel模型在两个表之间创建关系 的全部内容, 来源链接: utcz.com/qa/261911.html

回到顶部