【问题标题】:Change value on POST before saving保存前更改 POST 的值
【发布时间】:2014-03-13 22:12:04
【问题描述】:
@api_view(['GET', 'POST'])
@csrf_exempt
def index(request):
    if   request.method == 'GET':
    queryset = Test.objects.all()
    return render(request, 'rest_framework/index.html', {'request':request, 'queryset':queryset})
    elif request.method == 'POST':
    post_mutable = request.POST.copy()
        serializer = TestSerializer(data=request.DATA)
    serializer.context = {'request': request}
        if serializer.is_valid():
            serializer.data['test'] = "testing"
            serializer.save()
            return Response(serializer.data, status=status.HTTP_201_CREATED)
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)

如何在保存之前更改数据值?我想更改 TextField“测试”。

【问题讨论】:

  • 请修正你的缩进。

标签: django django-rest-framework


【解决方案1】:

您可以在 TestSerializer 类上覆盖 .save_object(obj) 方法。见docs

【讨论】:

    猜你喜欢
    • 2015-06-07
    • 2021-01-12
    • 1970-01-01
    • 1970-01-01
    • 2012-10-25
    • 1970-01-01
    • 2021-03-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多