<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Str;
class Category extends Model
{
protected $fillable = ['name', 'slug', 'description', 'image', 'status', 'sort_order'];
protected static function boot()
{
parent::boot();
static::creating(function ($category) {
if (empty($category->slug)) {
$category->slug = Str::slug($category->name);
}
});
}
public function products()
{
return $this->hasMany(Product::class);
}
public function getImageUrlAttribute()
{
return $this->image ? asset('storage/' . $this->image) : asset('images/no-image.png');
}
}