class 在关系查询中找不到 xx

class xx not found in relational query

我的 Laravel 6.6.2 有问题!!

当我想访问子table!有时我会收到以下错误

Class 'App\product' not found

型号:

public function product()
    {
        return $this->hasOne('App\product', 'id', 'product_id');
    }

控制器

$active_buying_log = ProductBuyingLog::first();
dd($active_buying_log->product);

但是当我像下面这样更改控制器代码时,一切正常。

$active_buying_log = ProductBuyingLog::first();
$variable = Product::first();
dd($active_buying_log->product);

我的 php 版本:7.2

谢谢大家

您的型号名称是大写字母 (Product),所以请使用大写字母。您稍后在 ProductBuyingLog 模型中使用了 small。用大写替换它,你的错误就会消失。

return $this->hasOne('App\Product', 'id', 'product_id');

此外,您传递的参数位置错误。第一个应该是 foreign_key 第二个应该是 primary_key

return $this->hasOne('App\Product', 'product_id', 'id');