You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and dots ('.'), can be up to 35 characters long. Letters must be lowercase.
50 lines
1.5 KiB
50 lines
1.5 KiB
<?php |
|
|
|
use Illuminate\Database\Migrations\Migration; |
|
use Illuminate\Database\Schema\Blueprint; |
|
use Illuminate\Support\Facades\Schema; |
|
|
|
return new class extends Migration |
|
{ |
|
/** |
|
* Run the migrations. |
|
*/ |
|
public function up(): void |
|
{ |
|
Schema::create('users', function (Blueprint $table) { |
|
$table->id(); |
|
$table->string('name'); |
|
$table->boolean("admin")->default(false); |
|
$table->string('email')->unique(); |
|
$table->timestamp('email_verified_at')->nullable(); |
|
$table->string('password'); |
|
$table->rememberToken(); |
|
$table->timestamps(); |
|
}); |
|
|
|
Schema::create('password_reset_tokens', function (Blueprint $table) { |
|
$table->string('email')->primary(); |
|
$table->string('token'); |
|
$table->timestamp('created_at')->nullable(); |
|
}); |
|
|
|
Schema::create('sessions', function (Blueprint $table) { |
|
$table->string('id')->primary(); |
|
$table->foreignId('user_id')->nullable()->index(); |
|
$table->string('ip_address', 45)->nullable(); |
|
$table->text('user_agent')->nullable(); |
|
$table->longText('payload'); |
|
$table->integer('last_activity')->index(); |
|
}); |
|
} |
|
|
|
/** |
|
* Reverse the migrations. |
|
*/ |
|
public function down(): void |
|
{ |
|
Schema::dropIfExists('users'); |
|
Schema::dropIfExists('password_reset_tokens'); |
|
Schema::dropIfExists('sessions'); |
|
} |
|
};
|
|
|