Files
back-meditation/app/Models/MusicCategory.php
2026-05-20 08:48:35 +03:30

36 lines
866 B
PHP

<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\BelongsTo; // ← Add this
use Illuminate\Database\Eloquent\Relations\HasMany; // ← Add this
class MusicCategory extends Model
{
protected $table = 'music_categories';
protected $fillable = [
'name', 'slug', 'description', 'image_id', 'order', 'is_active'
];
protected $casts = [
'is_active' => 'boolean',
'order' => 'integer',
];
public function playlists(): HasMany
{
return $this->hasMany(MusicPlaylist::class, 'category_id');
}
public function image(): BelongsTo
{
return $this->belongsTo(Image::class);
}
public function getActivePlaylistsAttribute()
{
return $this->playlists()->where('is_active', true)->get();
}
}