Files
webprewviewapi/submission/migrations/0005_add_flag_index.py
yuetsh 417e7c34bc Fix submission list API performance: N+1 queries, missing indexes, and in-memory pagination
- Add select_related("user") in update_score() to eliminate N+1 on rating.user.role
- Return QuerySet directly from list_submissions so @paginate works at DB level
- Defer html/css/js fields in list queries to reduce data transfer
- Add db_index on flag field for filtered queries
- Add select_related("task", "user") to get_submission endpoint
- Replace manual list() serialization with resolve_* methods on SubmissionOut

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-09 18:26:32 +08:00

19 lines
579 B
Python

# Generated by Django 6.0.1 on 2026-03-09 10:24
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('submission', '0004_submission_flag'),
]
operations = [
migrations.AlterField(
model_name='submission',
name='flag',
field=models.CharField(blank=True, choices=[('red', '值得展示'), ('blue', '需要讲解'), ('green', '优秀作品'), ('yellow', '需要改进')], db_index=True, default=None, max_length=10, null=True, verbose_name='标记'),
),
]