Laravel:枢轴表指向多个表

亚历克斯

可以说,我有一个orders是要有一个多到许多关系到三个名为其他表的表typingstranslatestheses我知道数据透视表应该以某种方式与多对多关系建立联系,但这并不是我要寻找的。我应该如何实现数据透视表?

斯瓦特金斯

您将通过名为的数据透视表与订单和其他三个表创建多态关系 orderables

// TABLES NEEDED
orders
  id - integer

typings
  id - integer

translates
  id - integer

theses
  id - integer

orderables
  order_id - integer
  orderable_id - integer
  orderable_type - string


// MODELS/RELATIONSHIPS NEEDED
class Typing extends Model
{
    public function orders()
    {
        return $this->morphToMany('App\Order', 'orderable');
    }
}
class Translate extends Model
{
    public function orders()
    {
        return $this->morphToMany('App\Order', 'orderable');
    }
}
class Thesis extends Model
{
    public function orders()
    {
        return $this->morphToMany('App\Order', 'orderable');
    }
}
class Order extends Model
{
    public function typings()
    {
        return $this->morphedByMany('App\Typing', 'orderable');
    }
    public function translates()
    {
        return $this->morphedByMany('App\Translate', 'orderable');
    }
    public function theses()
    {
        return $this->morphedByMany('App\Thesis', 'orderable');
    }
}

然后,您可以得到如下模型的订单:

$thesis = Thesis::find(1);
$orders = $thesis->orders;

反之:

$order = Order::find(1);
$theses = $order->theses;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

表中laravel与枢轴接合表

来自分类Dev

Laravel插入三向枢轴表

来自分类Dev

Laravel元素枢轴表使用where

来自分类Dev

Laravel Eloquent:通过具有多个关系的枢轴将表绑定到另一个表

来自分类Dev

雄辩的关系枢轴表与表

来自分类Dev

雄辩的关系枢轴表与表

来自分类Dev

在R中创建具有多个变量的比例枢轴表

来自分类Dev

日历表枢轴

来自分类Dev

Laravel HasManyThrough带三向枢轴表

来自分类Dev

Laravel HasManyThrough带三向枢轴表

来自分类Dev

laravel 如何通过枢轴获取四肢表

来自分类Dev

从laravel多个表的选择

来自分类Dev

转换表?使用枢轴/取消枢轴

来自分类Dev

指向表的指针表?

来自分类Dev

通过枢轴表laravel6连接两个表

来自分类Dev

Laravel多个用户ID表

来自分类Dev

使用laravel连接多个表

来自分类Dev

mysql表中的多个外键指向相同的主键

来自分类Dev

具有枢轴表的人类可读时间戳Laravel 4

来自分类Dev

使用枢轴连接2个表

来自分类Dev

扁平化熊猫枢轴表

来自分类Dev

使用EAV表联接/枢轴项目

来自分类Dev

带枢轴运算符的动态表

来自分类Dev

Laravel:使用数据透视表关联多个表

来自分类Dev

Laravel 左连接多个表并返回原始表值

来自分类Dev

Laravel在多个表中匹配ID

来自分类Dev

Laravel每个迁移有多个表

来自分类Dev

从多个表中获取数据Laravel

来自分类Dev

在Laravel中的多个表中存储多行