Просмотр исходного кода

[beers] Actually give producers names

Colin Powell 6 месяцев назад
Родитель
Сommit
ddfddc33f5

+ 47 - 0
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"
+            ),
+        ),
+    ]

+ 7 - 1
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)