laravel 数据库关联中无法获取本身的值?

public function roles(){    
    return $this->hasOne('App\Models\Role')->where('type',$this->type);
}

$this->type 获取不到任何值?这是为什么?
$this->attributes的值也是空数组,这是为什么啊?


凤凰求蛊
浏览 546回答 2
2回答

慕田峪4524236

是不是你的模型本身就是空的?你可以直接打印出$this看看,是不是一个有记录的模型。刚才我专门测试了一下,你上面的语句,是能成功执行的,并且可以获得this下的属性。

斯蒂芬大帝

这个写法看你怎么用了,如果你是用:$Obj->with(['roles'])->get();这种用法应该是拿不到值的。如果是:$model = $Obj->find('1');$result = $model->roles()->get();应该是有结果的。
打开App,查看更多内容
随时随地看视频慕课网APP