Files
alrahma_sunday_school/app/Database/Migrations/2026-01-06-205621_FixPrintRequestsForeignKeyAgain.php
T
root 716cc8b8d3
Tests / PHPUnit (push) Failing after 1m20s
fix school year for all tables
2026-07-18 14:45:38 -04:00

40 lines
1.0 KiB
PHP

<?php
namespace App\Database\Migrations;
use CodeIgniter\Database\Migration;
class FixPrintRequestsForeignKeyAgain extends Migration
{
public function up()
{
if (! $this->db->tableExists('print_requests') || ! $this->db->tableExists('classSection')) {
return;
}
$db = \Config\Database::connect();
$keys = $db->getForeignKeyData('print_requests');
foreach ($keys as $key) {
if ($key->constraint_name === 'print_requests_class_id_foreign') {
return;
}
}
$this->forge->addForeignKey('class_id', 'classSection', 'class_id', 'CASCADE', 'CASCADE');
$this->forge->processIndexes('print_requests');
}
public function down()
{
if (! $this->db->tableExists('print_requests')) {
return;
}
try {
$this->forge->dropForeignKey('print_requests', 'print_requests_class_id_foreign');
} catch (\Throwable $e) {
// Already absent.
}
}
}