lukaskorl / uniquely
Uniquely identified models for Laravel 4 by using UUID as primary key
Installs: 2 007
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 2
Forks: 0
Open Issues: 0
Requires
- php: >=5.4.0
- illuminate/support: 4.2.*
- rhumsaa/uuid: 2.7.*
This package is not auto-updated.
Last update: 2024-11-19 08:00:38 UTC
README
Uniquely uses UUIDv4 as primary key for Laravel 4 Eloquent models. It automatically generates the UUID when your model is saved. Uniquely overwrites the save()
method instead of attaching to Eloquent's creating
event in order to circumvent some problems in combination with unit testing.
Installation
To install Uniquely run
$ composer require lukaskorl/uniquely
You can specify 1.*
to include the most current version including possible future bugfixes.
Manual installation
If you choose to install Uniquely manually add the following line to your composer.json
:
"require": {
"lukaskorl/uniquely": "1.*"
}
and run
$ composer update
to install the package.
Usage
To use a Uniquely model simply extend your model class from Lukaskorl\Uniquely\Model
.
<?php
use Lukaskorl\Uniquely\Model;
class User extends Model {
}
Proper database migrations
The id
field of the corresponding database table for your model should be a 36-char string (i.e. VARCHAR(36)
). If you are using Laravel 4 migrations you will have to set your id
field like so:
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
class CreateUsersTable extends Migration {
public function up()
{
Schema::create('users', function(Blueprint $table)
{
$table->string('id', 36);
// ... other columns ...
$table->timestamps();
});
Schema::table('users', function(Blueprint $table)
{
$table->primary('id');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::drop('users');
}
}
License
Uniquely is open-sourced software licensed under the MIT license.