如何根据Laravel中的类别提取产品

时间:2019-03-02 06:38:23

标签: php laravel

我正在尝试使用Laravel Relationships按类别获取产品。

类别名称存储在条款表和产品表中,我添加了 term_id 列。

这是我的条款表enter image description here

这是我的产品enter image description here

这是我到目前为止在学期模型-

中所做的
public function products(){

    return $this->hasMany('shopist\Models\Product');

}

在我的控制器中-

    public function products()
        {

            $pro = term::where('term_id',2)->first();
            $pro->products;

        }

但是我没有得到任何结果。

2 个答案:

答案 0 :(得分:2)

请遵循以下步骤,以期限模型更正您的关系

public function products()
{
    return $this->hasMany('shopist\Models\Product', 'term_id', 'term_id'); // foreign key and local key should be defined
}

您必须在关系中定义外键和本地键,因为您没有遵循建议的主键列名称的laravel约定。

因此有必要告诉该方法需要将哪些键用作关系。

答案 1 :(得分:0)

尝试

public function products()
        {

            return Term::where('term_id',2)->first();

        }

或者如果您有产品型号

public function products()
    {

        return Product::where('term_id',2)->first();

    }