添加了过滤平台条件

This commit is contained in:
jlj 2025-05-27 11:10:52 +08:00
parent 43e4375b4f
commit a276f459df
4 changed files with 38 additions and 14 deletions

View File

@ -403,10 +403,7 @@ Authorization: Token <your_token>
"CA": 11.3,
"GE": 8.9
},
"date_range": {
"start_date": "2024-03-29",
"end_date": "2024-04-28"
}
"date_range": "May 10, 2025 - May 19, 2025"
}
}
```
@ -481,10 +478,7 @@ Authorization: Token <your_token>
"video_views": [85000, 92000, 78000, ...], // 30天的观看量数据
"engagement_rate": [3.2, 3.5, 2.8, ...], // 30天的互动率数据
"dates": ["2024-03-01", "2024-03-02", ...], // 对应的日期
"date_range": {
"start_date": "2024-03-01",
"end_date": "2024-03-31"
}
"date_range": "May 10, 2025 - May 19, 2025"
}
}
```
@ -683,8 +677,7 @@ Authorization: Token <your_token>
"e_commerce_level": ["L1", "L2", "L3"], // 多选
"exposure_level": ["KOL-1", "KOC-1"], // 多选
"gmv_range": ["$0-$5k", "$5k-$25k"], // 多选
"views_range": ["10k-100k"], // 单选
"pricing": ["100-500"] // 单选
"views_range": ["100, 10000"], // 单选
}
}
```
@ -985,8 +978,8 @@ Authorization: Token <your_token>
"e_commerce_level": ["L1", "L2", "L3"], // 多选
"exposure_level": ["KOL-1", "KOC-1"], // 多选
"gmv_range": ["$0-$5k", "$5k-$25k"], // 多选
"views_range": ["10k-100k"], // 单选
"pricing": ["100-500"] // 单选
"views_range": ["100, 10000"], // 单选
"pricing": ["100, 500"] // 单选
}
}
```

View File

@ -0,0 +1,18 @@
# Generated by Django 5.1.5 on 2025-05-27 03:10
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('daren_detail', '0005_merge_20250523_1923'),
]
operations = [
migrations.AlterField(
model_name='creatorprofile',
name='profile',
field=models.CharField(choices=[('tiktok', 'TikTok'), ('instagram', 'Instagram'), ('youtube', 'YouTube'), ('other', '其他平台')], default='tiktok', max_length=20, verbose_name='达人平台'),
),
]

View File

@ -129,7 +129,6 @@ class CreatorProfile(models.Model):
('tiktok', 'TikTok'),
('instagram', 'Instagram'),
('youtube', 'YouTube'),
('xiaohongshu', '小红书'),
('other', '其他平台'),
]
profile = models.CharField(max_length=20, choices=PROFILE_CHOICES, default='tiktok', verbose_name="达人平台")

View File

@ -2931,6 +2931,12 @@ def filter_public_creators(request):
if exposure_level and len(exposure_level) > 0:
public_creators = public_creators.filter(creator__exposure_level__in=exposure_level)
# 平台过滤tiktok, instagram, youtube等单选
platform = filter_data.get('platform')
if platform and len(platform) > 0:
platform_value = platform[0] # 单选,取第一个值
public_creators = public_creators.filter(creator__profile=platform_value)
# GMV范围过滤 ($0-$5k, $5k-$25k, $25k-$50k等),多选
gmv_range = filter_data.get('gmv_range')
if gmv_range and len(gmv_range) > 0:
@ -3039,6 +3045,7 @@ def filter_public_creators(request):
"category": creator.category,
"e_commerce_level": e_commerce_level_formatted,
"exposure_level": creator.exposure_level,
"platform": creator.profile, # 添加平台信息
"followers": followers_formatted,
"gmv": gmv_formatted,
"avg_video_views": avg_views_formatted,
@ -3164,6 +3171,12 @@ def filter_private_pool_creators(request):
if exposure_level and len(exposure_level) > 0:
creator_relations = creator_relations.filter(creator__exposure_level__in=exposure_level)
# 平台过滤tiktok, instagram, youtube等单选
platform = filter_data.get('platform')
if platform and len(platform) > 0:
platform_value = platform[0] # 单选,取第一个值
creator_relations = creator_relations.filter(creator__profile=platform_value)
# GMV范围过滤 ($0-$5k, $5k-$25k, $25k-$50k等),多选
gmv_range = filter_data.get('gmv_range')
if gmv_range and len(gmv_range) > 0:
@ -3305,6 +3318,7 @@ def filter_private_pool_creators(request):
"category": creator.category,
"e_commerce_level": e_commerce_level_formatted,
"exposure_level": creator.exposure_level,
"platform": creator.profile, # 添加平台信息
"followers": followers_formatted,
"gmv": gmv_formatted,
"avg_video_views": avg_views_formatted,