operations_project/apps/discovery/migrations/0001_initial.py
2025-05-20 15:57:10 +08:00

58 lines
3.5 KiB
Python

# Generated by Django 5.2 on 2025-05-16 02:40
import django.db.models.deletion
import django.utils.timezone
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=django.utils.timezone.now, 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='抖音链接')),
('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'],
},
),
]