diff --git a/vrobbler/apps/beers/migrations/0004_beerproducer_name_beerproducer_uuid_beerstyle_name_and_more.py b/vrobbler/apps/beers/migrations/0004_beerproducer_name_beerproducer_uuid_beerstyle_name_and_more.py new file mode 100644 index 0000000..aa02a18 --- /dev/null +++ b/vrobbler/apps/beers/migrations/0004_beerproducer_name_beerproducer_uuid_beerstyle_name_and_more.py @@ -0,0 +1,47 @@ +# Generated by Django 4.2.16 on 2024-10-22 21:52 + +from django.db import migrations, models +import uuid + + +class Migration(migrations.Migration): + + dependencies = [ + ("beers", "0003_beerstyle_remove_beer_beeradvocate_image_and_more"), + ] + + operations = [ + migrations.AddField( + model_name="beerproducer", + name="name", + field=models.CharField(default="Untitled", max_length=255), + preserve_default=False, + ), + migrations.AddField( + model_name="beerproducer", + name="uuid", + field=models.UUIDField( + blank=True, default=uuid.uuid4, editable=False, null=True + ), + ), + migrations.AddField( + model_name="beerstyle", + name="name", + field=models.CharField(default="Untitled", max_length=255), + preserve_default=False, + ), + migrations.AddField( + model_name="beerstyle", + name="uuid", + field=models.UUIDField( + blank=True, default=uuid.uuid4, editable=False, null=True + ), + ), + migrations.AlterField( + model_name="beer", + name="styles", + field=models.ManyToManyField( + related_name="styles", to="beers.beerstyle" + ), + ), + ] diff --git a/vrobbler/apps/beers/models.py b/vrobbler/apps/beers/models.py index 1e65078..b1e137c 100644 --- a/vrobbler/apps/beers/models.py +++ b/vrobbler/apps/beers/models.py @@ -1,3 +1,5 @@ +from uuid import uuid4 + from django.apps import apps from django.db import models from django.urls import reverse @@ -11,10 +13,14 @@ BNULL = {"blank": True, "null": True} class BeerStyle(TimeStampedModel): + uuid = models.UUIDField(default=uuid4, editable=False, **BNULL) + name = models.CharField(max_length=255) description = models.TextField(**BNULL) class BeerProducer(TimeStampedModel): + uuid = models.UUIDField(default=uuid4, editable=False, **BNULL) + name = models.CharField(max_length=255) description = models.TextField(**BNULL) location = models.CharField(max_length=255, **BNULL) beeradvocate_id = models.CharField(max_length=255, **BNULL) @@ -28,7 +34,7 @@ class Beer(ScrobblableMixin): description = models.TextField(**BNULL) ibu = models.SmallIntegerField(**BNULL) abv = models.FloatField(**BNULL) - styles = models.ManyToManyField(BeerStyle) + styles = models.ManyToManyField(BeerStyle, related_name="styles") non_alcoholic = models.BooleanField(default=False) beeradvocate_id = models.CharField(max_length=255, **BNULL) beeradvocate_score = models.SmallIntegerField(**BNULL)