From d9022004d5e3e6f944ed4f2287fb422d0bec1d05 Mon Sep 17 00:00:00 2001 From: Daniel Zhao Date: Sat, 21 Feb 2026 12:06:07 -0500 Subject: [PATCH 1/2] Create 0069_userprofile_has_been_onboarded.py --- .../0069_userprofile_has_been_onboarded.py | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 backend/courses/migrations/0069_userprofile_has_been_onboarded.py diff --git a/backend/courses/migrations/0069_userprofile_has_been_onboarded.py b/backend/courses/migrations/0069_userprofile_has_been_onboarded.py new file mode 100644 index 000000000..debbd6d20 --- /dev/null +++ b/backend/courses/migrations/0069_userprofile_has_been_onboarded.py @@ -0,0 +1,21 @@ +# Generated by Django 5.0.2 on 2025-12-04 22:35 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ("courses", "0068_merge_20250819_1758"), + ] + + operations = [ + migrations.AddField( + model_name="userprofile", + name="has_been_onboarded", + field=models.BooleanField( + default=False, + help_text="Defaults to False, changed to True once the user completes onboarding.", + ), + ), + ] From 10e021adcded3508f325509e35e54ef7306ce6ba Mon Sep 17 00:00:00 2001 From: Daniel Zhao Date: Sat, 21 Feb 2026 14:22:59 -0500 Subject: [PATCH 2/2] Update models.py --- backend/courses/models.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/backend/courses/models.py b/backend/courses/models.py index a7c25153b..67953c9f3 100644 --- a/backend/courses/models.py +++ b/backend/courses/models.py @@ -1436,6 +1436,11 @@ class UserProfile(models.Model): ) # phone field defined underneath validate_phone function below + has_been_onboarded = models.BooleanField( + default=False, + help_text="Defaults to False, changed to True once the user completes onboarding.", + ) + def validate_phone(value): """ Validator to check that a phone number is in the proper form. The number must be in a