首页 > 解决方案 > 与用户 laravel 的特许经营/分支机构关系

问题描述

我无法找到最适合创建快递网站的关系。我的要求是

  1. 一个分支可以有很多用户
  2. 特许经营权只能与一个用户相关联
  3. 一个分公司可以有很多特许经营权
  4. 分支机构用户可以通过特许经营模式访问

注意:- 分公司和特许经营有不同的配置文件

标签: laravellaravel-5

解决方案


我想避免直接跳到答案并将您给出的陈述转换为更简单的关系描述:

- 1 branch has many franchises
- 1 user has 1 franchise

这将帮助您理解:

- branch <> franchises is one to many relationship
- franchise <> user is one to one relationship

楷模 :

Branch模型 :

public function franchises()
{
    return $this->hasMany(Franchise::class);
}

Franchise模型 :

public function branch()
{
    return $this->belongsTo(Branch::class);
}

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

User模型 :

public function franchise()
{
    return $this->hasOne(User::class);
}

为了使这些关系起作用,您需要在数据库模式中具有适当的外键。要了解更多信息,请查看文档


推荐阅读