Есть модель User:
class User extends Authenticatable
{
use UUID;
...
}
И есть trait UUID:
trait UUID
{
protected static function boot()
{
parent::boot();
static::creating(function (Model $model) {
$model->setIncrementing(false);
$model->{$model->getKeyName()} = Str::orderedUuid();
});
}
}
Вроде должен добавлять uuid вместо id
При этом если сразу после создания сделать $user->getAttribute('id') выводится именно id
Но если сделать так: $user->fresh()->getAttribute('id') - то получим только первое число от этого самого uuid...
При этом, если убрать $model->setIncrementing(false) и добавить в User class:
public $incrementing = false;
То все заработает как надо.. Но я хочу это все сделать в трейте потому что в каждом классе приходится проделывать эту штуку