Trait to implement UUID in Eloquent ORM
The juniorb2ss/eloquent-uuid
provider a simple trait to implement UUID to ORM.
You can install this package via composer:
$ composer require juniorb2ss/eloquent-uuid~1.*
use juniorb2ss\EloquentUuid\EloquentUuidTrait;
class User extends Authenticatable
{
use Notifiable, EloquentUuidTrait;
/**
* UUID Column name used
*
* @var string
* @optional
*/
protected $uuidKey = 'uuid';
}
You need create new column in table model like uuid
or custom name you can define in uuidKey
model property
$fields = $request->only(['email', 'name', 'password']);
$user = User::create($fields); // Creating user with auto-inject uuid field
dump($user->toArray());
/*[
"id" => "1"
"uuid" => "723e4628-7c35-11e7-89b1-0242bfc0df57",
"name" => "Magdalena Zboncak"
"email" => "nitzsche.katherine@gulgowski.com"
]*/
use App\User;
$user = (new User)->onUuid('aae5f3f1-0f22-4a8b-9291-d2a9649d1490')
->firstOrFail();
composer run test
Please see CHANGELOG for more information on what has changed recently.
The MIT License (MIT). Please see License File for more information.