binarycabin / laravel-uuid by binarycabin

A wrapper for webpatser/laravel-uuid with additional integration
382,717
72
1
Package Data
Maintainer Username: binarycabin
Maintainer Contact: jeff@binarycabin.com (Jeff Kilroy)
Package Create Date: 2017-11-14
Package Last Update: 2024-04-25
Language: PHP
License: MIT
Last Refreshed: 2024-11-23 03:21:56
Package Statistics
Total Downloads: 382,717
Monthly Downloads: 10,415
Daily Downloads: 330
Total Stars: 72
Total Watchers: 1
Total Forks: 10
Total Open Issues: 7

Laravel-UUID

Build Status StyleCI Latest Stable Version Total Downloads

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.