'integer', 'featured' => 'boolean', 'active' => 'boolean', 'published_at' => 'datetime', ]; public function scopeActive(Builder $query): Builder { return $query->where('active', true); } public function scopePublished(Builder $query): Builder { return $query->whereNotNull('published_at')->where('published_at', '<=', now()); } public function category(): BelongsTo { return $this->belongsTo(AcademyCategory::class, 'category_id'); } public function progress(): HasMany { return $this->hasMany(AcademyLessonProgress::class, 'lesson_id'); } }