Files
portal-api/app/Traits/HasUuid.php
T
2026-01-29 15:52:23 +07:00

27 lines
565 B
PHP

<?php
namespace App\Traits;
use Illuminate\Support\Str;
trait HasUuid
{
protected static function bootHasUuid(): void
{
static::creating(function ($model) {
foreach ($model->getUuidColumns() as $column) {
if (empty($model->{$column})) {
$model->{$column} = (string) Str::uuid();
}
}
});
}
public function getUuidColumns(): array
{
return property_exists($this, 'uuidColumns')
? $this->uuidColumns
: ['uuid'];
}
}