Exam Question/Answer 3-way m:n

This commit is contained in:
2021-08-13 21:07:55 +02:00
parent aa073a5029
commit 837d86ae21
17 changed files with 226 additions and 51 deletions
+26
View File
@@ -1,6 +1,7 @@
<?php namespace GermanAirlinesVa\Schooling\Models;
use Model;
use Illuminate\Database\Eloquent\Builder;
/**
* Model
@@ -33,4 +34,29 @@ class ExamTyperatingAnswer extends Model
public $belongsTo = [
'exam_question' => ['GermanAirlinesVa\Schooling\Models\ExamTyperatingQuestion', 'key' => 'exam_question_id'],
];
public $belongsToMany = [
'exam_typeratings' => [
'GermanAirlinesVa\Schooling\Models\ExamTyperating',
'table' => 'exam_exam_answer_exam_question',
'key' => 'exam_answer_id',
'otherKey' => 'exam_id',
],
];
/**
* The "booting" method of the model.
*
* @return void
*/
protected static function boot()
{
parent::boot();
static::addGlobalScope('exam_typerating_answer_typerating_id', function (Builder $builder) {
$builder->whereHas('exam_question', function ($query) {
$query->where('typerating_id', '<>', null);
});
});
}
}