binarycabin/laravel-uuid
A wrapper for webpatser/laravel-uuid with additional integration
597,280
86
| Install | |
|---|---|
composer require binarycabin/laravel-uuid |
|
| Latest Version: | 1.0.2 |
| License: | MIT |
| Last Updated: | Apr 25, 2024 |
| Links: | GitHub · Packagist |
Maintainer: binarycabin
Laravel-UUID
A wrapper for webpatser/laravel-uuid with additional integration
composer require binarycabin/laravel-uuid
This package adds a very simple trait to automatically generate a UUID for your Models.
Simply add the "\BinaryCabin\LaravelUUID\Traits\HasUUID;" trait to your model:
<?php
namespace App;
use BinaryCabin\LaravelUUID\Traits\HasUUID;
use Illuminate\Database\Eloquent\Model;
class Project extends Model
{
use HasUUID;
}
If your column name is not "uuid", simply add a new property to your model named "uuidFieldName":
protected $uuidFieldName = 'unique_id';
This trait also adds a scope:
\App\Project::byUUID('uuid')->first();
And static find method:
\App\Project::findByUUID('uuid')
A second trait is available if you use your UUIDs as primary keys:
<?php
namespace App;
use BinaryCabin\LaravelUUID\Traits\HasUUID;
use BinaryCabin\LaravelUUID\Traits\UUIDIsPrimaryKey;
use Illuminate\Database\Eloquent\Model;
class Project extends Model
{
use HasUUID, UUIDIsPrimaryKey;
}
It simply tells Laravel that your primary key isn't an auto-incrementing integer, so it will treat the value correctly.