两种模式共享一种模式(发布和产品共享类别)

时间:2018-07-08 11:15:49

标签: laravel

我正在开发一个包含一些产品的项目。这些产品均属于一个类别。现在,我必须在我的项目中添加一个发布部分。每个帖子都属于一个明显不同于产品类别的类别。我想知道是否有一种方法可以将现有类别用于帖子,而我必须创建其他模型(例如PostCategory)。

1 个答案:

答案 0 :(得分:0)

您可以从此获得帮助

产品型号

public function categories()
{
    return $this->morphMany('App\Category', 'categorizable');
}

发布模型

public function categories()
{
    return $this->morphMany('App\Category', 'categorizable');
}

类别模型

public function categorizable()
{
    return $this->morphTo();
}

您的分类表应为

categories  (table)
    id - integer
    body - text
    categorizable_id - integer
    categorizable_type - string

在此处https://laravel.com/docs/5.6/eloquent-relationships#polymorphic-relations

查看详细信息