我想知道,django rest_framework 之间是否有任何差异:
from rest_framework.exceptions import ValidationError
from rest_framework.serializers import ValidationError
因为它们的进口方式不同。
rest_framework.exceptions.ValidationError
用于序列化器之外的一般验证错误,
而
rest_framework.serializers.ValidationError
专门用于序列化器类中的验证错误。
from rest_framework.exceptions import ValidationError
def my_view(request):
# Example validation in a view
if not request.user.is_authenticated:
raise ValidationError("User must be authenticated to access this endpoint")
from rest_framework.serializers import ValidationError
from rest_framework import serializers
class MySerializer(serializers.Serializer):
username = serializers.CharField(max_length=100)
email = serializers.EmailField()
def validate_username(self, value):
if len(value) < 3:
raise serializers.ValidationError("Username must be at least 3 characters long.")
return value