• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

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

laravel 来源:Polla A. Fattah 3次浏览

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

enter image description here

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

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'); 
} 

版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)