From 4f92c0c29eb85264da81fc3860f90dd4900efc8e Mon Sep 17 00:00:00 2001 From: Ernesto Rico Schmidt <ernesto@helsinki.at> Date: Wed, 12 Jul 2023 18:51:09 -0400 Subject: [PATCH] fix: remove editable options from model fields --- ...image_height_alter_image_width_and_more.py | 58 +++++++++++++++++++ program/models.py | 56 ++++-------------- 2 files changed, 70 insertions(+), 44 deletions(-) create mode 100644 program/migrations/0062_alter_image_height_alter_image_width_and_more.py diff --git a/program/migrations/0062_alter_image_height_alter_image_width_and_more.py b/program/migrations/0062_alter_image_height_alter_image_width_and_more.py new file mode 100644 index 00000000..302a93b4 --- /dev/null +++ b/program/migrations/0062_alter_image_height_alter_image_width_and_more.py @@ -0,0 +1,58 @@ +# Generated by Django 4.2.2 on 2023-07-12 22:39 + +import django.db.models.deletion +from django.conf import settings +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ("program", "0061_alter_category_subtitle"), + ] + + operations = [ + migrations.AlterField( + model_name="image", + name="height", + field=models.PositiveIntegerField(blank=True, null=True), + ), + migrations.AlterField( + model_name="image", + name="width", + field=models.PositiveIntegerField(blank=True, null=True), + ), + migrations.AlterField( + model_name="note", + name="owner", + field=models.ForeignKey( + default=1, + on_delete=django.db.models.deletion.CASCADE, + related_name="notes", + to=settings.AUTH_USER_MODEL, + ), + ), + migrations.AlterField( + model_name="timeslot", + name="note_id", + field=models.IntegerField(null=True), + ), + migrations.AlterField( + model_name="timeslot", + name="show", + field=models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, + related_name="timeslots", + to="program.show", + ), + ), + migrations.AlterField( + model_name="userprofile", + name="user", + field=models.OneToOneField( + on_delete=django.db.models.deletion.CASCADE, + related_name="profile", + to=settings.AUTH_USER_MODEL, + ), + ), + ] diff --git a/program/models.py b/program/models.py index 8053aebd..e6cd1ebc 100644 --- a/program/models.py +++ b/program/models.py @@ -116,7 +116,7 @@ class Language(models.Model): class Image(models.Model): alt_text = models.TextField(blank=True, default="") credits = models.TextField(blank=True, default="") - height = models.PositiveIntegerField(blank=True, null=True, editable=False) + height = models.PositiveIntegerField(blank=True, null=True) image = VersatileImageField( blank=True, height_field="height", @@ -127,7 +127,7 @@ class Image(models.Model): ) owner = models.CharField(max_length=150) ppoi = PPOIField() - width = models.PositiveIntegerField(blank=True, null=True, editable=False) + width = models.PositiveIntegerField(blank=True, null=True) def save(self, *args, **kwargs): super().save(*args, **kwargs) @@ -207,11 +207,7 @@ class Show(models.Model): description = models.TextField(blank=True) email = models.EmailField(blank=True, null=True) funding_category = models.ForeignKey( - FundingCategory, - null=True, - on_delete=models.CASCADE, - blank=True, - related_name="shows", + FundingCategory, blank=True, null=True, on_delete=models.CASCADE, related_name="shows" ) hosts = models.ManyToManyField(Host, blank=True, related_name="shows") image = models.ForeignKey(Image, null=True, on_delete=models.CASCADE, related_name="shows") @@ -221,21 +217,13 @@ class Show(models.Model): language = models.ManyToManyField(Language, blank=True, related_name="shows") # TODO: is this really necessary? logo = models.ForeignKey( - Image, - blank=True, - null=True, - on_delete=models.CASCADE, - related_name="logo_shows", + Image, blank=True, null=True, on_delete=models.CASCADE, related_name="logo_shows" ) music_focus = models.ManyToManyField(MusicFocus, blank=True, related_name="shows") name = models.CharField(max_length=255) owners = models.ManyToManyField(User, blank=True, related_name="shows") predecessor = models.ForeignKey( - "self", - blank=True, - null=True, - on_delete=models.CASCADE, - related_name="successors", + "self", blank=True, null=True, on_delete=models.CASCADE, related_name="successors" ) short_description = models.TextField() slug = models.CharField(max_length=255, unique=True) @@ -350,16 +338,13 @@ class Schedule(models.Model): ) last_date = models.DateField(help_text="End date of schedule.", null=True) rrule = models.ForeignKey( - RRule, - on_delete=models.CASCADE, - related_name="schedules", - help_text="A recurrence rule.", + RRule, help_text="A recurrence rule.", on_delete=models.CASCADE, related_name="schedules" ) show = models.ForeignKey( Show, + help_text="Show the schedule belongs to.", on_delete=models.CASCADE, related_name="schedules", - help_text="Show the schedule belongs to.", ) start_time = models.TimeField(help_text="Start time of schedule.") @@ -403,19 +388,13 @@ class TimeSlotManager(models.Manager): class TimeSlot(models.Model): end = models.DateTimeField() memo = models.TextField(blank=True) - note_id = models.IntegerField(null=True, editable=False) + note_id = models.IntegerField(null=True) playlist_id = models.IntegerField(null=True) repetition_of = models.ForeignKey( - "self", - blank=True, - null=True, - on_delete=models.CASCADE, - related_name="repetitions", + "self", blank=True, null=True, on_delete=models.CASCADE, related_name="repetitions" ) schedule = models.ForeignKey(Schedule, on_delete=models.CASCADE, related_name="timeslots") - show = models.ForeignKey( - Show, editable=False, on_delete=models.CASCADE, related_name="timeslots" - ) + show = models.ForeignKey(Show, on_delete=models.CASCADE, related_name="timeslots") start = models.DateTimeField() objects = TimeSlotManager() @@ -460,13 +439,7 @@ class Note(models.Model): created_at = models.DateTimeField(auto_now_add=True) created_by = models.CharField(max_length=150) image = models.ForeignKey(Image, null=True, on_delete=models.CASCADE, related_name="notes") - owner = models.ForeignKey( - User, - editable=False, - on_delete=models.CASCADE, - related_name="notes", - default=1, - ) + owner = models.ForeignKey(User, on_delete=models.CASCADE, related_name="notes", default=1) playlist = models.TextField(blank=True) slug = models.SlugField(max_length=32, unique=True) summary = models.TextField(blank=True) @@ -501,12 +474,7 @@ class UserProfile(models.Model): created_by = models.CharField(max_length=150) updated_at = models.DateTimeField(auto_now=True, blank=True, null=True) updated_by = models.CharField(blank=True, default="", max_length=150) - user = models.OneToOneField( - User, - on_delete=models.CASCADE, - related_name="profile", - editable=False, - ) + user = models.OneToOneField(User, on_delete=models.CASCADE, related_name="profile") def __str__(self): return self.user.username -- GitLab