현재 위치: > 최신 기사 목록> Laravel Framework는 자동으로 UUIDS : 테이블 생성에서 구현까지의 완전한 자습서를 생성합니다.

Laravel Framework는 자동으로 UUIDS : 테이블 생성에서 구현까지의 완전한 자습서를 생성합니다.

gitbox 2025-06-16

1. 소개

Laravel은 간단하고 유지 관리 가능하며 표현력이 뛰어난 코드 구조를 제공하는 데 전념하는 인기있는 PHP 프레임 워크입니다. 프레임 워크에는 많은 강력하고 실용적인 기능이 내장되어 있으며 그 중 하나는 UUID를 자동으로 생성하는 것입니다. UUID (범용 고유 식별자)는 다양한 시스템, 특히 고유 식별 정보가 필요한 시나리오에서 널리 사용됩니다.

2. uuid는 무엇입니까?

UUID, 전체 이름은 보편적으로 고유 한 식별자이며 각 정보 항목에 대해 고유 식별자를 제공 할 수있는 128 비트 값입니다. UUID가 생성되는 방식은 중앙 코디네이터에 의존하지 않으므로 충돌이없는 여러 다른 컴퓨터 나 시스템에서 독립적으로 생성 할 수 있습니다. 이로 인해 UUID는 분산 시스템에서 중요한 도구가되며 데이터베이스 레코드 및 네트워크 프로토콜과 같은 많은 분야에서 널리 사용됩니다.

3. Laravel에서 자동으로 UUID를 생성하는 방법

3.1 UUID 필드로 데이터 테이블을 만듭니다

Laravel에서 UUID를 사용하려면 먼저 데이터베이스 마이그레이션 파일의 데이터 테이블에 UUID 필드를 추가해야합니다. 마이그레이션 파일에서 다음과 같은 방법으로 설정할 수 있습니다.

 
Schema::create('my_table', function (Blueprint $table) {
    $table->uuid('uuid')->unique();
    // 다른 분야...
});

위의 코드에서는`uuid`라는 필드를 만들고 유형을 UUID로 설정합니다. 또한 각 UUID 값이`고유 ()`메소드를 통해 고유한지 확인합니다.

3.2 Laravel은 자동으로 UUID를 생성합니다

데이터베이스 테이블에 UUID 필드를 추가 한 후 Laravel은 각 새로운 레코드에 대해 UUID를 자동으로 생성 할 수 있습니다. 이 모델에서는 다음 코드를 사용하여 UUID를 자동으로 생성 할 수 있습니다.

 
use Ramsey\Uuid\Uuid;

class MyModel extends Model
{
    public $incrementing = false;
    protected $primaryKey = 'uuid';

    protected static function boot()
    {
        parent::boot();

        static::creating(function ($model) {
            $model->uuid = Uuid::uuid4()->toString();
        });
    }
}

위의 코드에서는`Ramsey \ uuid \ uuid` 클래스를 소개하고 모델의 '생성'이벤트에서 UUID를 생성합니다. 모델을 저장하기 전에 UUID는 모델의 'UUID'필드에 자동으로 할당됩니다.

4. 자동 생성 된 UUID를 사용하는 방법

UUID 생성 로직이 모델에 설정되면 Laravel 모델을 정상적으로 사용하는 것이 좋습니다. 예를 들어, 새 레코드를 삽입 할 때 UUID는 데이터 테이블의 UUID 필드를 자동으로 생성하고 채 웁니다.

 
App\Models\MyModel::create([
    'name' => 'my name',
    // 다른 분야...
]);

삽입 작업을 수행 할 때 Laravel은 'UUID'필드에 고유 한 UUID 값을 자동으로 생성하여 저장합니다.

5. 요약

Laravel의 자동 UUID 생성 기능을 통해 개발자는 각 레코드에 대한 고유 식별자를 쉽게 생성 할 수 있습니다. 데이터베이스 마이그레이션에서 UUID 필드를 작성하고 모델에서 UUID를 자동으로 생성하는 기능을 구현하면 UUID를 수동으로 관리하는 복잡성을 피할 수 있습니다. UUID의 분산 특성으로 응용 프로그램은 여러 분산 시스템에서 고유 한 신원이 생성되도록하여 데이터 충돌을 피할 수 있습니다.