import os
import django
from pathlib import Path

# 添加项目根目录到Python路径
project_root = Path(__file__).resolve().parent
os.sys.path.insert(0, str(project_root))

# 设置Django环境
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'api.project_config.settings')
django.setup()

# 测试PlayerStatsViewSet
from api.views import PlayerStatsViewSet
from django.core.exceptions import ImproperlyConfigured
import traceback

try:
    v = PlayerStatsViewSet()
    # 检查序列化器字段
    serializer = v.get_serializer_class()()
    print("Serializer fields:", list(serializer.fields.keys()))
    
    # 检查模型字段
    from api.models import PlayerStats
    model_fields = [f.name for f in PlayerStats._meta.get_fields()]
    print("Model fields:", model_fields)
    
    # 检查序列化器Meta中的字段
    meta_fields = serializer.Meta.fields
    print("Meta fields:", meta_fields)
    
    # 检查不匹配的字段
    for field in meta_fields:
        if field not in model_fields and field not in ['player_name', 'player_slug', 'team_name', 'team_slug']:
            print(f"Field '{field}' in serializer but not in model")
            
except Exception as e:
    print('Error:')
    traceback.print_exc()