From 7d5d3217a0f1e5906cee42481e5c8d2d396a9d2a Mon Sep 17 00:00:00 2001 From: saani Date: Thu, 27 Nov 2025 14:56:37 +0000 Subject: [PATCH] fix: allow null values for Jitsi fields in AppointmentRequest Add `null=True` to `jitsi_meet_url` and `jitsi_room_id` fields in the AppointmentRequest model. This allows these optional fields to be NULL at the database level in addition to accepting blank values, which is the proper Django pattern for optional string-based fields. This change requires a database migration to be generated and applied. --- ...ointmentrequest_jitsi_meet_url_and_more.py | 23 +++++++++++++++++++ meetings/models.py | 4 ++-- 2 files changed, 25 insertions(+), 2 deletions(-) create mode 100644 meetings/migrations/0002_alter_appointmentrequest_jitsi_meet_url_and_more.py diff --git a/meetings/migrations/0002_alter_appointmentrequest_jitsi_meet_url_and_more.py b/meetings/migrations/0002_alter_appointmentrequest_jitsi_meet_url_and_more.py new file mode 100644 index 0000000..2cbbc8c --- /dev/null +++ b/meetings/migrations/0002_alter_appointmentrequest_jitsi_meet_url_and_more.py @@ -0,0 +1,23 @@ +# Generated by Django 5.2.8 on 2025-11-27 14:55 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('meetings', '0001_initial'), + ] + + operations = [ + migrations.AlterField( + model_name='appointmentrequest', + name='jitsi_meet_url', + field=models.URLField(blank=True, help_text='Jitsi Meet URL for the video session', null=True), + ), + migrations.AlterField( + model_name='appointmentrequest', + name='jitsi_room_id', + field=models.CharField(blank=True, help_text='Jitsi room ID', max_length=100, null=True, unique=True), + ), + ] diff --git a/meetings/models.py b/meetings/models.py index bb5950c..e351183 100644 --- a/meetings/models.py +++ b/meetings/models.py @@ -203,8 +203,8 @@ class AppointmentRequest(models.Model): ) rejection_reason = EncryptedTextField(blank=True) - jitsi_meet_url = models.URLField(blank=True, help_text="Jitsi Meet URL for the video session") - jitsi_room_id = models.CharField(max_length=100, unique=True, blank=True, help_text="Jitsi room ID") + jitsi_meet_url = models.URLField(blank=True, null=True, help_text="Jitsi Meet URL for the video session") + jitsi_room_id = models.CharField(max_length=100, unique=True, null=True, blank=True, help_text="Jitsi room ID") created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True)