# Generated by Django 5.2.1 on 2025-05-29 09:24 import apps.discovery.models import django.db.models.deletion from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='SearchSession', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('session_number', models.IntegerField(default=1, verbose_name='会话编号')), ('creator_count', models.IntegerField(default=0, verbose_name='创作者数量')), ('shoppable_creators', models.IntegerField(default=0, verbose_name='可购物创作者数量')), ('avg_followers', models.FloatField(default=0, verbose_name='平均粉丝数')), ('avg_gmv', models.FloatField(default=0, verbose_name='平均GMV')), ('avg_video_views', models.FloatField(default=0, verbose_name='平均视频观看量')), ('date_created', models.DateField(default=apps.discovery.models.get_current_date, verbose_name='创建日期')), ], options={ 'verbose_name': '搜索会话', 'verbose_name_plural': '搜索会话', 'ordering': ['-date_created'], }, ), migrations.CreateModel( name='Creator', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=100, verbose_name='创作者名称')), ('avatar', models.URLField(blank=True, null=True, verbose_name='头像URL')), ('category', models.CharField(choices=[('Phones & Electronics', 'Phones & Electronics'), ('Womenswear & Underwear', 'Womenswear & Underwear'), ('Sports & Outdoor', 'Sports & Outdoor'), ('Food & Beverage', 'Food & Beverage'), ('Health', 'Health'), ('Kitchenware', 'Kitchenware'), ('Furniture', 'Furniture'), ('Shoes', 'Shoes'), ('Home Supplies', 'Home Supplies')], max_length=50, verbose_name='类别')), ('ecommerce_level', models.CharField(choices=[('L1', 'Level 1'), ('L2', 'Level 2'), ('L3', 'Level 3'), ('L4', 'Level 4'), ('L5', 'Level 5'), ('New tag', 'New Tag')], max_length=10, verbose_name='电商等级')), ('exposure_level', models.CharField(choices=[('KOC-1', 'KOC-1'), ('KOC-2', 'KOC-2'), ('KOL-2', 'KOL-2'), ('KOL-3', 'KOL-3'), ('New tag', 'New Tag')], max_length=10, verbose_name='曝光等级')), ('followers', models.FloatField(default=0, verbose_name='粉丝数')), ('gmv', models.FloatField(default=0, verbose_name='GMV')), ('items_sold', models.FloatField(default=0, verbose_name='销售项目数')), ('avg_video_views', models.FloatField(default=0, verbose_name='平均视频观看量')), ('has_ecommerce', models.BooleanField(default=False, verbose_name='是否有电商')), ('tiktok_url', models.URLField(blank=True, null=True, verbose_name='抖音链接')), ('hashtags', models.TextField(blank=True, null=True, verbose_name='标签')), ('trends', models.TextField(blank=True, null=True, verbose_name='趋势')), ('profile', models.CharField(choices=[('tiktok', 'TikTok'), ('instagram', 'Instagram'), ('youtube', 'YouTube'), ('xiaohongshu', '小红书'), ('other', '其他平台')], default='tiktok', max_length=20, verbose_name='达人平台')), ('session', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='creators', to='discovery.searchsession', verbose_name='所属会话')), ], options={ 'verbose_name': '创作者', 'verbose_name_plural': '创作者', 'ordering': ['name'], }, ), ]