'array', 'is_active' => 'boolean', ]; public function bank(): BelongsTo { return $this->belongsTo(QuestionBank::class, 'question_bank_id'); } public function options(): HasMany { return $this->hasMany(QuestionOption::class)->orderBy('sort'); } public function tags(): BelongsToMany { return $this->belongsToMany(QuestionTag::class, 'question_tag'); } public function wrongQuestions(): HasMany { return $this->hasMany(WrongQuestion::class); } public function correctOptionIds(): array { return $this->options->where('is_correct', true)->pluck('id')->map(fn ($id) => (int) $id)->values()->all(); } }