分享 / 8 / 5 / 创建于 5年前 / 更新于 5年前
已经解决了,跟数据库定义确实没关系。是我在 AppServiceProvider 的观察者注册写错了。谢谢大家解答.
默认的外键是category_id吧,你表里是product_category_id的话,要如下定义关联方法:
category_id
product_category_id
public function category() { return $this->belongsTo(ProductCategory::class, 'product_category_id'); }
@qf-Z 您好,我是按照它的表名和关联对应规则来定义的,即:product_categories表与products关联。我在products表内定义的外键名是:product_category_id(按照laravel默认规则为:"表名单数_id"格式)。若按照您的方法定义会报一个错,如下:
product_category_id 要有值
你的结果集中没看到product_category_id盲猜你的查询语句中没有包含product_category_id字段,如 select id from table把id 换成 * 或增加一个product_category_id
select id from table
id
*
已经解决了,跟数据库定义确实没关系。是我在AppServiceProvider的观察者注册写错了。谢谢大家解答.
我要举报该,理由是:
默认的外键是
category_id吧,你表里是product_category_id的话,要如下定义关联方法:@qf-Z 您好,我是按照它的表名和关联对应规则来定义的,即:product_categories表与products关联。我在products表内定义的外键名是:product_category_id(按照laravel默认规则为:"表名单数_id"格式)。若按照您的方法定义会报一个错,如下:
product_category_id 要有值
你的结果集中没看到
product_category_id盲猜你的查询语句中没有包含
product_category_id字段,如select id from table把
id换成*或增加一个product_category_id已经解决了,跟数据库定义确实没关系。是我在AppServiceProvider的观察者注册写错了。谢谢大家解答.