Как определить три таблицы отношений в моделях в Laravel 5.6 - PullRequest
0 голосов
/ 14 сентября 2018

В моем проекте есть три таблицы типа (учитель, посещаемость, пользователь), и я определил отношения в этой модели. в отношении таблицы преподавателя как к посещаемости, так и к пользователю, но пользователь не имеет отношения к посещаемости, когда я хочу получить данные, отображается ошибка типа Property [attendance_status] does not exist on this collection instance. как я могу решить эту проблему.

Это модель пользователя

public function teacher() {
    return $this->hasOne('App\Teacher');
}

это модель Учителя

public function attendance() {
    return $this->hasMany(Attendance::class,'teacher_id','user_id');
}

это модель посещаемости

public function teacher() {
   return $this->belongsTo(Teacher::class,'teacher_id','user_id');
}

и в контроллере посещаемости я определяю вот так

$staffAttendances = Teacher::with(['attendance','user'])->get();

foreach ($staffAttendances as $attd) {          
      echo $attd->user->first_name .'<br>';
      echo $attd->designation.'<br>';
      echo $attd->attendance->attendance_status.'<br>';
}

1 Ответ

0 голосов
/ 14 сентября 2018

Попробуйте

 $attd->attendance[0]->attendance_status
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...