From 06aa84eb4f8a05aaa6d7e2ad6bf9272f60aecf40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Hells=C3=A9n?= Date: Wed, 1 Apr 2026 04:15:36 +0200 Subject: [PATCH] Alter ChzzkCampaign and ChzzkReward models to change fields from CharField to TextField --- ...kcampaign_campaign_reward_type_and_more.py | 85 +++++++++++++++++++ chzzk/models.py | 28 +++--- 2 files changed, 99 insertions(+), 14 deletions(-) create mode 100644 chzzk/migrations/0002_alter_chzzkcampaign_campaign_reward_type_and_more.py diff --git a/chzzk/migrations/0002_alter_chzzkcampaign_campaign_reward_type_and_more.py b/chzzk/migrations/0002_alter_chzzkcampaign_campaign_reward_type_and_more.py new file mode 100644 index 0000000..cdab320 --- /dev/null +++ b/chzzk/migrations/0002_alter_chzzkcampaign_campaign_reward_type_and_more.py @@ -0,0 +1,85 @@ +# Generated by Django 6.0.3 on 2026-04-01 02:13 + +from django.db import migrations +from django.db import models + + +class Migration(migrations.Migration): + """Migration to alter ChzzkCampaign and ChzzkReward models to change some fields from CharField to TextField.""" + + dependencies = [ + ("chzzk", "0001_initial"), + ] + + operations = [ + migrations.AlterField( + model_name="chzzkcampaign", + name="campaign_reward_type", + field=models.TextField(blank=True, default=""), + ), + migrations.AlterField( + model_name="chzzkcampaign", + name="category_id", + field=models.TextField(), + ), + migrations.AlterField( + model_name="chzzkcampaign", + name="category_type", + field=models.TextField(), + ), + migrations.AlterField( + model_name="chzzkcampaign", + name="category_value", + field=models.TextField(), + ), + migrations.AlterField( + model_name="chzzkcampaign", + name="reward_type", + field=models.TextField(blank=True, default=""), + ), + migrations.AlterField( + model_name="chzzkcampaign", + name="scrape_status", + field=models.TextField(default="success"), + ), + migrations.AlterField( + model_name="chzzkcampaign", + name="service_id", + field=models.TextField(), + ), + migrations.AlterField( + model_name="chzzkcampaign", + name="source_api", + field=models.TextField(), + ), + migrations.AlterField( + model_name="chzzkcampaign", + name="state", + field=models.TextField(), + ), + migrations.AlterField( + model_name="chzzkcampaign", + name="title", + field=models.TextField(), + ), + migrations.AlterField( + model_name="chzzkreward", + name="campaign_reward_type", + field=models.TextField(blank=True, default=""), + ), + migrations.AlterField( + model_name="chzzkreward", + name="condition_type", + field=models.TextField(), + ), + migrations.AlterField( + model_name="chzzkreward", + name="reward_type", + field=models.TextField(), + ), + migrations.AlterField( + model_name="chzzkreward", + name="title", + field=models.TextField(), + ), + ] diff --git a/chzzk/models.py b/chzzk/models.py index c1c5840..91a5559 100644 --- a/chzzk/models.py +++ b/chzzk/models.py @@ -6,28 +6,28 @@ class ChzzkCampaign(models.Model): """Chzzk campaign, including scraping metadata.""" campaign_no = models.BigIntegerField() - title = models.CharField(max_length=255) + title = models.TextField() image_url = models.URLField() description = models.TextField() - category_type = models.CharField(max_length=64) - category_id = models.CharField(max_length=128) - category_value = models.CharField(max_length=128) + category_type = models.TextField() + category_id = models.TextField() + category_value = models.TextField() pc_link_url = models.URLField() mobile_link_url = models.URLField() - service_id = models.CharField(max_length=128) - state = models.CharField(max_length=64) + service_id = models.TextField() + state = models.TextField() start_date = models.DateTimeField() end_date = models.DateTimeField() has_ios_based_reward = models.BooleanField() drops_campaign_not_started = models.BooleanField() - campaign_reward_type = models.CharField(max_length=64, blank=True, default="") - reward_type = models.CharField(max_length=64, blank=True, default="") + campaign_reward_type = models.TextField(blank=True, default="") + reward_type = models.TextField(blank=True, default="") account_link_url = models.URLField() # Scraping metadata scraped_at = models.DateTimeField(default=timezone.now) - source_api = models.CharField(max_length=16) - scrape_status = models.CharField(max_length=32, default="success") + source_api = models.TextField() + scrape_status = models.TextField(default="success") raw_json_v1 = models.JSONField(null=True, blank=True) raw_json_v2 = models.JSONField(null=True, blank=True) @@ -48,10 +48,10 @@ class ChzzkReward(models.Model): ) reward_no = models.BigIntegerField() image_url = models.URLField() - title = models.CharField(max_length=255) - reward_type = models.CharField(max_length=64) - campaign_reward_type = models.CharField(max_length=64, blank=True, default="") - condition_type = models.CharField(max_length=64) + title = models.TextField() + reward_type = models.TextField() + campaign_reward_type = models.TextField(blank=True, default="") + condition_type = models.TextField() condition_for_minutes = models.IntegerField() ios_based_reward = models.BooleanField() code_remaining_count = models.IntegerField()