老师,求解,一个是取出来我的关注,一个是取出来我的粉丝,这俩方法不能理解
<?php
namespace App\Models;
.
class User extends Authenticatable
{
.
.
.
public function followers()
{
//这里的user_id是那个表里面的
//这里的follower_id是哪个表里面的
return $this->belongsToMany(User::Class, 'followers', 'user_id', 'follower_id');
}
public function followings()
{
//这里的user_id是那个表里面的
//这里的follower_id是哪个表里面的
return $this->belongsToMany(User::Class, 'followers', 'follower_id', 'user_id');
}
}
这个关联中的模型是指的哪个??
合并的模型是指的哪个???
方法的第三个参数 user_id 是定义在关联中的模型外键名,而第四个参数 follower_id 则是要合并的模型外键名。
高认可度评论:
一个关注关系的话可能会这么定义 中间表 user_follow_user (也就是你这里的follower表?这个表命名做中间表不合适吧)
这个表会定义2个字段 user_id (行为发起人) followed_user_id (行为目标也就是关注的用户)
此时多对多关系就可以这么定义
但是如果这个行为叫用户关注文章,也就是laravel文档中的例子,会比较容易理解多对多模型关联的定义
user_follow_product: user_id, product_id
return $this->belongsToMany(Post:class, 'user_follow_post', 'user_id', 'post_id')
@Blue-Yu
你好,看一下二楼的文字描述、再看一下这个图应该能理解了、
以下来源:互联网
刚刚画的图有点丑

我是这么理解的
一对多文档
一个关注关系的话可能会这么定义 中间表 user_follow_user (也就是你这里的follower表?这个表命名做中间表不合适吧)
这个表会定义2个字段 user_id (行为发起人) followed_user_id (行为目标也就是关注的用户)
此时多对多关系就可以这么定义
但是如果这个行为叫用户关注文章,也就是laravel文档中的例子,会比较容易理解多对多模型关联的定义
user_follow_product: user_id, product_id
return $this->belongsToMany(Post:class, 'user_follow_post', 'user_id', 'post_id')
@Administrator ,一对多能看明白,这个多对多迷糊
@Blue-Yu
你好,看一下二楼的文字描述、再看一下这个图应该能理解了、
以下来源:互联网
刚刚画的图有点丑

我是这么理解的
@Max 谢谢老师,完全理解了
@Administrator 谢谢老师,完全理解了,有图更容易理解了
你们怎么把phpstorm搞得这么好看的呀 能不能告知一下
@剑歌丶 用的sublime,
@Blue-Yu 那是什么主题,字号什么的 能把配置发给我么,非常感谢
@剑歌丶
主题:Material Theme
字号:15px
好的 谢谢拉~
@echofree313非常感谢您