# Generated by Django 5.1b1 on 2024-07-09 22:26 import auto_prefetch import django.db.models.deletion import django.db.models.functions.text import django.db.models.manager from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [] operations = [ migrations.CreateModel( name="DropCampaign", fields=[ ("id", models.TextField(primary_key=True, serialize=False)), ("account_link_url", models.URLField(blank=True, null=True)), ("description", models.TextField(blank=True, null=True)), ("details_url", models.URLField(blank=True, null=True)), ("end_at", models.DateTimeField(blank=True, null=True)), ("image_url", models.URLField(blank=True, null=True)), ("name", models.TextField(blank=True, null=True)), ("start_at", models.DateTimeField(blank=True, null=True)), ("status", models.TextField(blank=True, null=True)), ("added_at", models.DateTimeField(auto_now_add=True, null=True)), ("modified_at", models.DateTimeField(auto_now=True, null=True)), ], options={ "verbose_name": "Drop Campaign", "verbose_name_plural": "Drop Campaigns", "ordering": ("name",), "abstract": False, "base_manager_name": "prefetch_manager", }, managers=[ ("objects", django.db.models.manager.Manager()), ("prefetch_manager", django.db.models.manager.Manager()), ], ), migrations.CreateModel( name="Game", fields=[ ("id", models.TextField(primary_key=True, serialize=False)), ("slug", models.TextField(blank=True, null=True)), ( "twitch_url", models.GeneratedField( # type: ignore # noqa: PGH003 db_persist=True, expression=django.db.models.functions.text.Concat( models.Value("https://www.twitch.tv/directory/category/"), "slug", ), output_field=models.TextField(), ), ), ( "image_url", models.GeneratedField( # type: ignore # noqa: PGH003 db_persist=True, expression=django.db.models.functions.text.Concat( models.Value("https://static-cdn.jtvnw.net/ttv-boxart/"), "id", models.Value("_IGDB.jpg"), ), output_field=models.URLField(), ), ), ("display_name", models.TextField(blank=True, null=True)), ("added_at", models.DateTimeField(auto_now_add=True, null=True)), ("modified_at", models.DateTimeField(auto_now=True, null=True)), ], options={ "verbose_name": "Game", "verbose_name_plural": "Games", "ordering": ("display_name",), "abstract": False, "base_manager_name": "prefetch_manager", }, managers=[ ("objects", django.db.models.manager.Manager()), ("prefetch_manager", django.db.models.manager.Manager()), ], ), migrations.CreateModel( name="Organization", fields=[ ("id", models.TextField(primary_key=True, serialize=False)), ("name", models.TextField(blank=True, null=True)), ("added_at", models.DateTimeField(auto_now_add=True, null=True)), ("modified_at", models.DateTimeField(auto_now=True, null=True)), ], options={ "verbose_name": "Organization", "verbose_name_plural": "Organizations", "ordering": ("name",), "abstract": False, "base_manager_name": "prefetch_manager", }, managers=[ ("objects", django.db.models.manager.Manager()), ("prefetch_manager", django.db.models.manager.Manager()), ], ), migrations.CreateModel( name="Drop", fields=[ ("id", models.TextField(primary_key=True, serialize=False)), ("created_at", models.DateTimeField(blank=True, null=True)), ("entitlement_limit", models.IntegerField(blank=True, null=True)), ("image_asset_url", models.URLField(blank=True, null=True)), ("name", models.TextField(blank=True, null=True)), ("added_at", models.DateTimeField(auto_now_add=True, null=True)), ("modified_at", models.DateTimeField(auto_now=True, null=True)), ("required_subs", models.IntegerField(blank=True, null=True)), ("end_at", models.DateTimeField(blank=True, null=True)), ("required_minutes_watched", models.IntegerField(blank=True, null=True)), ("start_at", models.DateTimeField(blank=True, null=True)), ( "drop_campaign", auto_prefetch.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="drops", to="twitch_app.dropcampaign", ), ), ], options={ "verbose_name": "Drop", "verbose_name_plural": "Drops", "ordering": ("name",), "abstract": False, "base_manager_name": "prefetch_manager", }, managers=[ ("objects", django.db.models.manager.Manager()), ("prefetch_manager", django.db.models.manager.Manager()), ], ), migrations.AddField( model_name="dropcampaign", name="game", field=auto_prefetch.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="drop_campaigns", to="twitch_app.game", ), ), migrations.AddField( model_name="game", name="organization", field=auto_prefetch.ForeignKey( on_delete=django.db.models.deletion.CASCADE, related_name="games", to="twitch_app.organization", ), ), ]