2
我已经定义了一个串行这样的:Django的REST框架验证蛞蝓场
class ActivitySerializer(serializers.ModelSerializer):
activity_project = serializers.SlugRelatedField(queryset=Project.objects.all(), slug_field='project_name')
activity_tags = serializers.SlugRelatedField(queryset=Tag.objects.all(), slug_field='tag_name', many=True)
class Meta:
model = Activity
fields = ('activity_name', 'activity_description', 'activity_status', 'activity_completion_percent', 'activity_due_date', 'activity_project', 'activity_tags',)
现在,如果我插入不存在于数据库中的activity_tag,我得到一个验证错误”
{
"activity_tags": [
"Object with tag_name=test does not exist."
]
}
我想创建,增加了标签在数据库中,如果不存在,验证方法。 我已经使用
def validate(self, attrs):
....
尝试
方法,但显然对于slug字段,有一种方法在此之前调用。
有人可以指向我应该使用的正确方法吗?这个方法是否会在相应的视图中被调用?