feat: user ids to uuids

This commit is contained in:
Leon 2026-01-07 15:12:59 +01:00
parent 660014d56d
commit b71ac00de8
6 changed files with 24 additions and 10 deletions

View File

@ -4,17 +4,31 @@ namespace App\Models;
// use Illuminate\Contracts\Auth\MustVerifyEmail;
use App\Enums\UserRole;
use Illuminate\Database\Eloquent\Concerns\HasUlids;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Illuminate\Notifications\Notifiable;
use Laravel\Sanctum\HasApiTokens;
use Illuminate\Database\Eloquent\Concerns\HasUuids;
class User extends Authenticatable
{
/** @use HasFactory<\Database\Factories\UserFactory> */
use HasApiTokens, HasFactory, Notifiable, SoftDeletes;
use HasApiTokens, HasFactory, Notifiable, SoftDeletes, HasUuids;
/**
* The primary key type.
*
* @var string
*/
protected $keyType = 'string';
/**
* Indicates if the IDs are auto-incrementing.
*
* @var bool
*/
public $incrementing = false;
/**
* The attributes that are mass assignable.

View File

@ -12,7 +12,7 @@ return new class extends Migration
public function up(): void
{
Schema::create('users', function (Blueprint $table) {
$table->id();
$table->uuid('id')->primary();
$table->string('username');
$table->string('email')->unique();
$table->timestamp('email_verified_at')->nullable();
@ -29,7 +29,7 @@ return new class extends Migration
Schema::create('sessions', function (Blueprint $table) {
$table->string('id')->primary();
$table->foreignId('user_id')->nullable()->index();
$table->foreignUuid('user_id')->nullable()->index();
$table->string('ip_address', 45)->nullable();
$table->text('user_agent')->nullable();
$table->longText('payload');

View File

@ -13,7 +13,7 @@ return new class extends Migration
{
Schema::create('personal_access_tokens', function (Blueprint $table) {
$table->id();
$table->morphs('tokenable');
$table->uuidMorphs('tokenable');
$table->text('name');
$table->string('token', 64)->unique();
$table->text('abilities')->nullable();

View File

@ -34,7 +34,7 @@ return new class extends Migration
$table->string('image')->nullable();
$table->foreignId('creator_id')->nullable()->constrained('users')->nullOnDelete();
$table->foreignUuid('creator_id')->nullable()->constrained('users')->nullOnDelete();
$table->timestamps();
});

View File

@ -14,7 +14,7 @@ return new class extends Migration
{
Schema::create('hunt_participants', function (Blueprint $table) {
$table->id();
$table->foreignId('user_id')->constrained()->cascadeOnDelete();
$table->foreignUuid('user_id')->constrained()->cascadeOnDelete();
$table->foreignId('hunt_id')->constrained('hunts')->cascadeOnDelete();
$table->unsignedSmallInteger('current_step_number')->default(1);
$table->string('status')->default(ParticipateStatus::Started->value);

View File

@ -38,8 +38,8 @@ class BordeauxHuntsSeeder extends Seeder
'title' => 'Place de la Bourse',
'description' => 'Rendez-vous sur cette place emblématique.',
'hint_text' => 'Miroir d\'eau',
'latitude' => 44.8417,
'longitude' => -0.5706,
'latitude' => 44.8617,
'longitude' => -0.5606,
'radius_m' => 50,
]);
@ -50,7 +50,7 @@ class BordeauxHuntsSeeder extends Seeder
'title' => 'Grand Théâtre',
'description' => 'Un opéra du XVIIIe siècle.',
'hint_text' => 'Douze colonnes corinthiennes',
'latitude' => 44.8427,
'latitude' => 44.8227,
'longitude' => -0.5746,
'radius_m' => 50,
]);