审查生成的个人资料端点

来自 Django
Django 6.0.8 / Python 3.14 高级 10分钟 找出 4处问题

在部署这段生成的个人资料端点前,对它进行审查。

允许已认证用户只更新自己的显示名称和时区,拒绝格式错误的输入,原子记录审计事件,并返回公开个人资料。

Python
import json

from django.contrib.auth.decorators import login_required
from django.forms.models import model_to_dict
from django.http import JsonResponse
from django.views.decorators.csrf import csrf_exempt


@csrf_exempt
@login_required
def update_profile(request, account_id):
    payload = json.loads(request.body)
    account = Account.objects.get(pk=account_id)
    for field, value in payload.items():
        setattr(account, field, value)
    account.save()
    AuditEvent.objects.create(account=account, kind="profile.updated")
    active_sessions = len(list(account.sessions.all()))
    return JsonResponse(
        {"profile": model_to_dict(account), "active_sessions": active_sessions}
    )

生成代码仅作示例,不代表任何特定模型

在试验场中打开
报告错误