'array', ]; public function user() { return $this->belongsTo(User::class); } public function purchasable(): MorphTo { return $this->morphTo(null, 'purchase_type', 'purchase_id'); } // Alias for purchasable relationship public function purchase(): MorphTo { return $this->morphTo(null, 'purchase_type', 'purchase_id'); } public function course() { return $this->belongsTo(Course::class, 'purchase_id') ->where('purchase_type', Course::class); } public function exam() { return $this->belongsTo(Exam::class, 'purchase_id') ->where('purchase_type', Exam::class); } }