lukaskorl/uniquely

使用UUID作为主键的独特标识Laravel 4模型

v1.0 2014-07-26 20:35 UTC

This package is not auto-updated.

Last update: 2024-09-24 07:22:52 UTC


README

Uniquely 使用UUIDv4作为 Laravel 4 Eloquent模型 的主键。当模型保存时,它会自动生成UUID。Uniquely 通过覆盖save()方法而不是附加到Eloquent的creating事件来避免与单元测试结合时的一些问题。

安装

要安装 Uniquely,请运行

$ composer require lukaskorl/uniquely

您可以使用 1.* 来包含最新版本,包括可能的未来修复。

手动安装

如果您选择手动安装 Uniquely,请将以下行添加到您的 composer.json

"require": {
    "lukaskorl/uniquely": "1.*"
}

然后运行

$ composer update

以安装包。

使用方法

要使用 Uniquely 模型,只需从 Lukaskorl\Uniquely\Model 扩展您的模型类。

<?php

use Lukaskorl\Uniquely\Model;

class User extends Model {

}

适当的数据库迁移

您模型的对应数据库表的 id 字段应为36个字符的字符串(即 VARCHAR(36))。如果您使用 Laravel 4迁移,您必须将您的 id 字段设置为如下

<?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');
	}
}

许可

Uniquely 是开源软件,许可协议为 MIT许可