【问题标题】:3 Tables Relation In LaravelLaravel 中的 3 个表关系
【发布时间】:2021-06-13 18:53:03
【问题描述】:

我有一个小问题,

我看不到如何在 Laravel 上建立三表关系。

已删除

如果有人可以帮助我,我会做笔记!

谢谢!

【问题讨论】:

  • > One Contact has one Job in Many Films ...不清楚,使用3个标准显示您的表格之间的关系; 1-1 , 1-n 或 n-n
  • 看起来更好,但仍然不足以理解(而不是猜测)你们的关系,
  • 在编码之前,能够像我之前写的那样澄清你的关系非常重要,(呃)阅读这个laravel.com/docs/8.x/eloquent-relationships然后一切都应该是唯一的方法。
  • 是的,我明白了,但我不想为您建立关系,否则您将无法理解。如果您愿意,可以从 2 张桌子开始。
  • 我最后一次:关系是:两个表之间的一对一或一对多或多对多。

标签: php mysql laravel eloquent


【解决方案1】:

据我所知,您需要创建与数据透视表的关系,然后您可以创建与这两个表的关系。

class Contact extends Model
{
    public function filmJobs()
    {
        return $this->hasMany(ContactFilm::class);
    }
}
class ContactFilm extends Model
{
    public function film()
    {
        return $this->hasOne(Film::class);
    }

    public function job()
    {
        return $this->hasOne(Job::class);
    }
}

您现在可以像这样使用它:$contact->filmJobs[0]->film$contact->filmJobs[0]->job

【讨论】:

    猜你喜欢
    • 2017-07-09
    • 2020-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    • 2022-10-21
    • 2016-04-14
    相关资源
    最近更新 更多