PHP code example of goldspecdigital / laravel-eloquent-uuid
1. Go to this page and download the library: Download goldspecdigital/laravel-eloquent-uuid library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
goldspecdigital / laravel-eloquent-uuid example snippets
namespace App\Models;
use GoldSpecDigital\LaravelEloquentUUID\Database\Eloquent\Model;
class BlogPost extends Model
{
//
}
namespace App\Models;
use GoldSpecDigital\LaravelEloquentUUID\Foundation\Auth\User as Authenticatable;
class User extends Authenticatable
{
//
}
namespace App\Models;
use GoldSpecDigital\LaravelEloquentUUID\Database\Eloquent\Uuid;
use Illuminate\Database\Eloquent\Model;
class BlogPost extends Model
{
use Uuid;
/**
* The "type" of the auto-incrementing ID.
*
* @var string
*/
protected $keyType = 'string';
/**
* Indicates if the IDs are auto-incrementing.
*
* @var bool
*/
public $incrementing = false;
/**
* The attributes that are mass assignable.
*
* @var array
*/
protected $guarded = [];
}
namespace App\Models;
use GoldSpecDigital\LaravelEloquentUUID\Database\Eloquent\Model;
class BlogPost extends Model
{
/**
* The UUID version to use.
*
* @var int
*/
protected int $uuidVersion = 1;
}
namespace App\Models;
use GoldSpecDigital\LaravelEloquentUUID\Database\Eloquent\Uuid;
use Illuminate\Database\Eloquent\Model;
class BlogPost extends Model
{
use Uuid;
/**
* The UUID version to use.
*
* @return int
*/
protected function uuidVersion(): int
{
return 1;
}
}
namespace App\Models;
use GoldSpecDigital\LaravelEloquentUUID\Database\Eloquent\Model;
use Ramsey\Uuid\Uuid;
class BlogPost extends Model
{
/**
* @throws \Exception
* @return string
*/
protected function generateUuid(): string
{
// UUIDv3 has been used here, but you can also use UUIDv5.
return Uuid::uuid3(Uuid::NAMESPACE_DNS, 'example.com')->toString();
}
}
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateUsersTable extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('users', function (Blueprint $table): void {
// Primary key.
$table->uuid('id')->primary();
});
}
}
class CreatePostsTable extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::create('posts', function (Blueprint $table): void {
// Primary key.
$table->uuid('id')->primary();
// Foreign key.
$table->uuid('user_id');
$table->foreign('user_id')->references('id')->on('users');
});
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.