File: //home/armgroup/libs/app/Models/Tag.php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
use Spatie\Activitylog\LogOptions;
use Spatie\Activitylog\Traits\LogsActivity;
class Tag extends Model
{
use HasFactory, LogsActivity;
protected $guarded = ['id'];
protected $casts = [
'faq' => 'array',
];
public function getActivitylogOptions(): LogOptions
{
return LogOptions::defaults()
->logUnguarded()
->setDescriptionForEvent(fn (string $eventName) => "تگها ({$this->name}) ".eventNameTranslate($eventName));
}
public function getRouteKeyName()
{
return 'slug';
}
public function products()
{
return $this->morphedByMany(Product::class, 'taggable');
}
}