我在保存序列化数据之前根据序列化数据执行了一些验证,并在验证失败时停止保存。我正在使用在perform_create方法之前执行的pre_save,我能够进行验证,但我不知道如果这些验证失败,如何停止serializer.save()。
我可以根据要求提供任何其他细节。我想坚持使用CreateApiView,除非它完全是不可避免的。
答案 0 :(得分:0)
您应该能够调用pre_save()
,如果序列化程序中出现错误,则会引发异常并停止执行任何代码
如果您正在使用from rest_framework import exceptions
raise exceptions.ParseError({"error":["Something went wrong"]})
函数,则可以始终引发解析错误异常,在满足条件时触发:
tofile