From 810de300967974a4824c39b66ce2e3f8f7be9dc3 Mon Sep 17 00:00:00 2001 From: Donald <154738239+DonaldFon@users.noreply.github.com> Date: Mon, 1 Sep 2025 12:14:59 +0800 Subject: [PATCH 01/14] Update 2021_11_08_091231_create_tasks_table.php --- .../migrations/task1/2021_11_08_091231_create_tasks_table.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/database/migrations/task1/2021_11_08_091231_create_tasks_table.php b/database/migrations/task1/2021_11_08_091231_create_tasks_table.php index 08bf628f..b07c895a 100644 --- a/database/migrations/task1/2021_11_08_091231_create_tasks_table.php +++ b/database/migrations/task1/2021_11_08_091231_create_tasks_table.php @@ -15,8 +15,7 @@ public function up() { Schema::create('tasks', function (Blueprint $table) { $table->id(); - $table->bigInteger('user_id'); - $table->foreign('user_id')->references('id')->on('users'); + $table->foreignId('user_id'); $table->string('name'); $table->timestamps(); }); From 16a694f8366be2858ed420834929ac89ba7c9a31 Mon Sep 17 00:00:00 2001 From: Donald <154738239+DonaldFon@users.noreply.github.com> Date: Mon, 1 Sep 2025 12:17:27 +0800 Subject: [PATCH 02/14] Update 2021_11_08_092943_create_comments_table.php --- .../task1/2021_11_08_092943_create_comments_table.php | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/database/migrations/task1/2021_11_08_092943_create_comments_table.php b/database/migrations/task1/2021_11_08_092943_create_comments_table.php index 0378294b..b85db5c0 100644 --- a/database/migrations/task1/2021_11_08_092943_create_comments_table.php +++ b/database/migrations/task1/2021_11_08_092943_create_comments_table.php @@ -15,10 +15,8 @@ public function up() { Schema::create('comments', function (Blueprint $table) { $table->id(); - $table->unsignedInteger('user_id'); - $table->foreign('user_id')->references('id')->on('users'); - $table->unsignedInteger('comment_id'); - $table->foreign('comment_id')->references('id')->on('comments'); + $table->foreignId('user_id'); + $table->foreignId('comment_id'); $table->string('comment_text'); $table->timestamps(); }); From fb46417b278594fd62be3fb44af00931cab4fc60 Mon Sep 17 00:00:00 2001 From: Donald <154738239+DonaldFon@users.noreply.github.com> Date: Mon, 1 Sep 2025 12:20:41 +0800 Subject: [PATCH 03/14] Update 2021_11_09_075928_add_surname_to_users_table.php --- .../task2/2021_11_09_075928_add_surname_to_users_table.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/database/migrations/task2/2021_11_09_075928_add_surname_to_users_table.php b/database/migrations/task2/2021_11_09_075928_add_surname_to_users_table.php index 5a3422a4..7cfe14e5 100644 --- a/database/migrations/task2/2021_11_09_075928_add_surname_to_users_table.php +++ b/database/migrations/task2/2021_11_09_075928_add_surname_to_users_table.php @@ -16,6 +16,7 @@ public function up() Schema::table('users', function (Blueprint $table) { // TASK: Add a string field "surname" which would go after the field "name" // Write code here + $table->string('surname')->after('name'); }); } @@ -28,6 +29,7 @@ public function down() { Schema::table('users', function (Blueprint $table) { // + $table->dropColumn('surname'); }); } } From bf8824c7efd57ab78ea04ba2fc10619b50021429 Mon Sep 17 00:00:00 2001 From: Donald <154738239+DonaldFon@users.noreply.github.com> Date: Mon, 1 Sep 2025 12:21:30 +0800 Subject: [PATCH 04/14] Update 2021_11_09_080955_create_projects_table.php --- .../migrations/task3/2021_11_09_080955_create_projects_table.php | 1 + 1 file changed, 1 insertion(+) diff --git a/database/migrations/task3/2021_11_09_080955_create_projects_table.php b/database/migrations/task3/2021_11_09_080955_create_projects_table.php index 9dc9d7b5..3cbcc04d 100644 --- a/database/migrations/task3/2021_11_09_080955_create_projects_table.php +++ b/database/migrations/task3/2021_11_09_080955_create_projects_table.php @@ -19,6 +19,7 @@ public function up() $table->timestamps(); // TASK: Add soft deletes column here + $table->softDeletes(); }); } From a70c69c2522afd1ae851bca64251f5a2ac1fe0d2 Mon Sep 17 00:00:00 2001 From: Donald <154738239+DonaldFon@users.noreply.github.com> Date: Mon, 1 Sep 2025 12:23:25 +0800 Subject: [PATCH 05/14] Update 2021_11_09_082205_create_products_table.php --- .../task4/2021_11_09_082205_create_products_table.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/database/migrations/task4/2021_11_09_082205_create_products_table.php b/database/migrations/task4/2021_11_09_082205_create_products_table.php index 78636019..9a22e739 100644 --- a/database/migrations/task4/2021_11_09_082205_create_products_table.php +++ b/database/migrations/task4/2021_11_09_082205_create_products_table.php @@ -16,7 +16,7 @@ public function up() // TASK: Edit this file, so that deleting category would auto-delete its products Schema::create('products', function (Blueprint $table) { $table->id(); - $table->foreignId('category_id')->constrained(); + $table->foreignId('category_id')->constrained()->cascadeOnDelete(); $table->string('name'); $table->timestamps(); }); From 8a96576eba81e33dca2a925a2a904accf0da9fcd Mon Sep 17 00:00:00 2001 From: Donald <154738239+DonaldFon@users.noreply.github.com> Date: Mon, 1 Sep 2025 12:23:59 +0800 Subject: [PATCH 06/14] Update 2021_11_08_091231_create_tasks_table.php --- .../migrations/task1/2021_11_08_091231_create_tasks_table.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/database/migrations/task1/2021_11_08_091231_create_tasks_table.php b/database/migrations/task1/2021_11_08_091231_create_tasks_table.php index b07c895a..d249f4b7 100644 --- a/database/migrations/task1/2021_11_08_091231_create_tasks_table.php +++ b/database/migrations/task1/2021_11_08_091231_create_tasks_table.php @@ -15,7 +15,7 @@ public function up() { Schema::create('tasks', function (Blueprint $table) { $table->id(); - $table->foreignId('user_id'); + $table->foreignId('user_id')->constrained(); $table->string('name'); $table->timestamps(); }); From cb7666993d5c711bab9f78be162a0cc706d9ea8a Mon Sep 17 00:00:00 2001 From: Donald <154738239+DonaldFon@users.noreply.github.com> Date: Mon, 1 Sep 2025 12:24:33 +0800 Subject: [PATCH 07/14] Update 2021_11_08_092943_create_comments_table.php --- .../task1/2021_11_08_092943_create_comments_table.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/database/migrations/task1/2021_11_08_092943_create_comments_table.php b/database/migrations/task1/2021_11_08_092943_create_comments_table.php index b85db5c0..3c5ff32a 100644 --- a/database/migrations/task1/2021_11_08_092943_create_comments_table.php +++ b/database/migrations/task1/2021_11_08_092943_create_comments_table.php @@ -15,8 +15,8 @@ public function up() { Schema::create('comments', function (Blueprint $table) { $table->id(); - $table->foreignId('user_id'); - $table->foreignId('comment_id'); + $table->foreignId('user_id')->constrained(); + $table->foreignId('comment_id')->constrained(); $table->string('comment_text'); $table->timestamps(); }); From 8821fcdb6d3ea26e0efe2eac53d1cb6412722323 Mon Sep 17 00:00:00 2001 From: Donald <154738239+DonaldFon@users.noreply.github.com> Date: Mon, 1 Sep 2025 12:35:57 +0800 Subject: [PATCH 08/14] Update 2021_11_09_083121_update_users_table.php --- .../migrations/task5/2021_11_09_083121_update_users_table.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/database/migrations/task5/2021_11_09_083121_update_users_table.php b/database/migrations/task5/2021_11_09_083121_update_users_table.php index c10976a5..6c31fbec 100644 --- a/database/migrations/task5/2021_11_09_083121_update_users_table.php +++ b/database/migrations/task5/2021_11_09_083121_update_users_table.php @@ -14,6 +14,10 @@ class UpdateUsersTable extends Migration public function up() { // TASK: add an if-statement in this file to NOT add column if it already exists + + if(Schema::hasColumn('users','name')){ + return; + } Schema::table('users', function (Blueprint $table) { $table->string('name'); }); From 2ab6b77a60f1b3c7adb54b02bfa352ab336cd203 Mon Sep 17 00:00:00 2001 From: Donald <154738239+DonaldFon@users.noreply.github.com> Date: Mon, 1 Sep 2025 12:36:28 +0800 Subject: [PATCH 09/14] Update 2021_11_09_083225_recreate_users_table.php --- .../task5/2021_11_09_083225_recreate_users_table.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/database/migrations/task5/2021_11_09_083225_recreate_users_table.php b/database/migrations/task5/2021_11_09_083225_recreate_users_table.php index 6b15a7c6..7a2bd0f7 100644 --- a/database/migrations/task5/2021_11_09_083225_recreate_users_table.php +++ b/database/migrations/task5/2021_11_09_083225_recreate_users_table.php @@ -14,6 +14,10 @@ class RecreateUsersTable extends Migration public function up() { // TASK: add an if-statement in this file to NOT create table if it already exists + + if(Schema::hasTable('users')){ + return; + } Schema::create('users', function (Blueprint $table) { $table->id(); $table->string('name'); From 32ad45b0ec032c8ba3a0fa04024d0c19c61ef660 Mon Sep 17 00:00:00 2001 From: Donald <154738239+DonaldFon@users.noreply.github.com> Date: Mon, 1 Sep 2025 13:10:56 +0800 Subject: [PATCH 10/14] Update 2021_11_09_083843_create_companies_table.php --- .../task6/2021_11_09_083843_create_companies_table.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/database/migrations/task6/2021_11_09_083843_create_companies_table.php b/database/migrations/task6/2021_11_09_083843_create_companies_table.php index 9554406a..360998bb 100644 --- a/database/migrations/task6/2021_11_09_083843_create_companies_table.php +++ b/database/migrations/task6/2021_11_09_083843_create_companies_table.php @@ -16,7 +16,7 @@ public function up() // TASK: edit this migration so there couldn't be two companies with the same name Schema::create('companies', function (Blueprint $table) { $table->id(); - $table->string('name'); + $table->string('name')->unique(); $table->timestamps(); }); } From 9926c68bbad0f4fbea92c95bf615b1e462926a3f Mon Sep 17 00:00:00 2001 From: Donald <154738239+DonaldFon@users.noreply.github.com> Date: Mon, 1 Sep 2025 13:11:30 +0800 Subject: [PATCH 11/14] Update 2021_11_09_084922_create_new_companies_table.php --- .../task7/2021_11_09_084922_create_new_companies_table.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/database/migrations/task7/2021_11_09_084922_create_new_companies_table.php b/database/migrations/task7/2021_11_09_084922_create_new_companies_table.php index 868a2422..36bf0166 100644 --- a/database/migrations/task7/2021_11_09_084922_create_new_companies_table.php +++ b/database/migrations/task7/2021_11_09_084922_create_new_companies_table.php @@ -17,7 +17,7 @@ public function up() // its automatic value of name would be "My company" Schema::create('companies', function (Blueprint $table) { $table->id(); - $table->string('name'); + $table->string('name')->default('My company'); $table->timestamps(); }); } From 552e0062c984ebfae609530d4615233b7be205bd Mon Sep 17 00:00:00 2001 From: Donald <154738239+DonaldFon@users.noreply.github.com> Date: Mon, 1 Sep 2025 13:12:40 +0800 Subject: [PATCH 12/14] Update 2021_11_09_085453_rename_companies_table.php --- .../task8/2021_11_09_085453_rename_companies_table.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/database/migrations/task8/2021_11_09_085453_rename_companies_table.php b/database/migrations/task8/2021_11_09_085453_rename_companies_table.php index dc4ae6f2..1f09456b 100644 --- a/database/migrations/task8/2021_11_09_085453_rename_companies_table.php +++ b/database/migrations/task8/2021_11_09_085453_rename_companies_table.php @@ -14,6 +14,7 @@ class RenameCompaniesTable extends Migration public function up() { // TASK: add a migration to rename table "company" into "companies" + Schema::rename('company','companies'); } /** @@ -24,5 +25,6 @@ public function up() public function down() { // + Schema::rename('companies','company'); } } From 5e6d6aa30fdad68902e9728151e920f1a94e18c1 Mon Sep 17 00:00:00 2001 From: Donald <154738239+DonaldFon@users.noreply.github.com> Date: Mon, 1 Sep 2025 13:13:36 +0800 Subject: [PATCH 13/14] Update 2021_11_09_090018_rename_name_in_companies_table.php --- .../task9/2021_11_09_090018_rename_name_in_companies_table.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/database/migrations/task9/2021_11_09_090018_rename_name_in_companies_table.php b/database/migrations/task9/2021_11_09_090018_rename_name_in_companies_table.php index f270c9e7..f782c2d8 100644 --- a/database/migrations/task9/2021_11_09_090018_rename_name_in_companies_table.php +++ b/database/migrations/task9/2021_11_09_090018_rename_name_in_companies_table.php @@ -16,6 +16,7 @@ public function up() // TASK: write the migration to rename the column "title" into "name" Schema::table('companies', function (Blueprint $table) { // Write code here + $table->renameColumn('title','name'); }); } @@ -28,6 +29,7 @@ public function down() { Schema::table('companies', function (Blueprint $table) { // + $table->renameColumn('name','title'); }); } } From 00ca9876a485749153485fd2e3dfa154a0b6730c Mon Sep 17 00:00:00 2001 From: Donald <154738239+DonaldFon@users.noreply.github.com> Date: Mon, 1 Sep 2025 13:14:03 +0800 Subject: [PATCH 14/14] Update 2021_11_09_090858_create_visitors_table.php --- .../task10/2021_11_09_090858_create_visitors_table.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/database/migrations/task10/2021_11_09_090858_create_visitors_table.php b/database/migrations/task10/2021_11_09_090858_create_visitors_table.php index 7a53968c..08e7516e 100644 --- a/database/migrations/task10/2021_11_09_090858_create_visitors_table.php +++ b/database/migrations/task10/2021_11_09_090858_create_visitors_table.php @@ -16,7 +16,7 @@ public function up() // TASK: edit this migration so country_id would allow NULL values Schema::create('visitors', function (Blueprint $table) { $table->id(); - $table->foreignId('country_id')->constrained(); + $table->foreignId('country_id')->nullable()->constrained(); $table->string('ip_address'); $table->timestamps(); });