我需要从关联的表中获取一些数据,但是我无法处理。我有带功能的下表。
Class User
{
public function lastGoals()
{
return $this->hasMany('App\UserGoals')->last()->with('data');
}
}
Class UserGoals
{
protected $fillable = [
'user_id', 'goal_id'
];
public function data()
{
return $this->hasOne('App\CreatorGoals', 'id', 'goal_id');
}
public function goalsBelong()
{
return $this->belongsTo('App\CreatorGoals', 'goal_id', 'id');
}
}
Class CreatorGoals
{
protected $fillable = [
'id', 'label', 'type'
];
public function scopeFront($query)
{
return $query->select('id', 'label', 'type')->where('is_front', 1);
}
}
我需要使用UserID及其标签来获取所有UserGoals,
现在我有:
$data = User::user(Auth::guard('web')->user()->id)->with('lastGoals')->first();
我有一组用户,但我不知道要获取每个用户目标的标签。我尝试过:
$data->lastGoals->data->label;
$data->lastGoals->label;
$data->data->lastGoals->label;
但是我仍然有错误。如何获取每个用户目标的标签?