【问题标题】:Laravel Eloquent Relationship with User and AgentLaravel Eloquent 与用户和代理的关系
【发布时间】:2021-09-08 19:31:39
【问题描述】:

拜托,伙计们,我需要你的帮助。

我想实现一个用户可以成为代理的系统(使用他们希望调用代理的名称)。此外,当得到管理员批准后,许多用户在注册过程中可以通过引用代理 ID 来属于该代理。

这是我尝试过的...

在 User.php 中

public function agent(){
    return $this->hasOne(Agent::class, 'agent_id', 'id');
}

在 Agent.php 中

public function users(){
   return $this->hasMany(User::class, 'agent_id', 'id');
}

然后在迁移中:我在用户迁移中有 'agent_id',在代理迁移中有 'user_id'

我有什么遗漏吗?

如何正确设置模型和迁移的关系?

我现在好像误会了……

提前感谢您的帮助。

【问题讨论】:

  • 你已经尝试过什么?你有用户模型吗?如果是这样,你可以add它来回答这个问题吗?
  • 我已经更新了我的问题。请检查。感谢您的宝贵时间。
  • 好像你已经建立了关系,只是缺少迁移/数据库表,对吧?
  • 是的。我已经写过这两个表的迁移是如何构建的。如果您再次阅读我的问题,也许您会明白我的意思
  • 迁移有什么问题。您是否已有任何迁移代码?

标签: laravel model migration eloquent-relationship


【解决方案1】:

你需要交换 User.php 中的第二个和第三个参数:

public function agent(){
    return $this->hasOne(Agent::class, 'id', 'agent_id');
}

【讨论】:

  • 好的,试试这个。谢谢
猜你喜欢
  • 1970-01-01
  • 2015-01-29
  • 2016-11-21
  • 1970-01-01
  • 2020-12-23
  • 2014-02-01
  • 2021-07-04
  • 1970-01-01
  • 2019-05-14
相关资源
最近更新 更多