pelican-panel-mirror/database/migrations/2017_02_03_155554_RenameColumns.php
Lance Pioch 8261184b57
Officially support PostgreSQL database (#1066)
* Just skip this table because it no longer exists

* Add postgresql

* This no longer needs to be there

* These are the same output in mysql, but different in postgresql

* Fix these migrations for postgresql

* This table no longer exists

* This is expected to be a json column for json operations, required for postgresql

* Shoot for the stars

* Fix pint

* Why was this missing

* Updates

* Restore this

* This needs to be explicit

* Don’t like strings

* Fix these classes

* Use different method to compare dates

* Apparently postgresql doesn’t like case insensitivity

* Postgresql orders it backwards

* Ordered different by postgresql

* Unnecessary and breaking

* Make sure the order is correct for postresql

* Fix this with the order too

* Remove this

* Force email to be lowercased

* Update app/Models/User.php
2025-03-30 14:44:03 -04:00

51 lines
1.7 KiB
PHP

<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Database\Migrations\Migration;
return new class extends Migration
{
/**
* Run the migrations.
*/
public function up(): void
{
Schema::table('allocations', function (Blueprint $table) {
$table->dropForeign(['node']);
$table->dropForeign(['assigned_to']);
if (!in_array(Schema::getConnection()->getDriverName(), ['sqlite', 'pgsql'])) {
$table->dropIndex('allocations_node_foreign');
$table->dropIndex('allocations_assigned_to_foreign');
}
$table->renameColumn('node', 'node_id');
$table->renameColumn('assigned_to', 'server_id');
$table->foreign('node_id')->references('id')->on('nodes');
$table->foreign('server_id')->references('id')->on('servers');
});
}
/**
* Reverse the migrations.
*/
public function down(): void
{
Schema::table('allocations', function (Blueprint $table) {
$table->dropForeign(['node_id']);
$table->dropForeign(['server_id']);
if (!in_array(Schema::getConnection()->getDriverName(), ['sqlite', 'pgsql'])) {
$table->dropIndex('allocations_node_id_foreign');
$table->dropIndex('allocations_server_id_foreign');
}
$table->renameColumn('node_id', 'node');
$table->renameColumn('server_id', 'assigned_to');
$table->foreign('node')->references('id')->on('nodes');
$table->foreign('assigned_to')->references('id')->on('servers');
});
}
};