首页  >  问答  >  正文

实施可选的双向用户关系:分步指南

我有一个用户模型,这些用户之间存在某种关系。

示例: 约翰是杰克和吉尔的父亲。

杰克和吉尔是兄弟姐妹。

杰克是雅各布和约书亚的朋友。

我怎样才能完全实现这种关系? 这是家庭关系和友谊的混合体,所以我很困惑最好的做法是什么?

P粉412533525P粉412533525184 天前342

全部回复(1)我来回复

  • P粉178894235

    P粉1788942352024-04-02 00:57:51

    您需要制作两个模型:用户和关系。 首先,使两个模型相关(一对多关系):

    型号:用户

    public function relations()
    {
        return $this->hasMany(Relation::class);
    }

    模型:关系

    public function user()
    {
        return $this->belongsTo(User::class);
    }

    然后在您的关系模型中(请记住也在您的迁移上设置它),您需要有四列: user_one 、 user_two 、 type_one 和 type_two 。

    举个例子: user_one : 父亲的用户 id / user_two : 儿子的用户 id , type_one : 父亲 / type_two : 儿子 。

    就这样吧。

    回复
    0
  • 取消回复