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字段,有一種方法在此之前調用。
有人可以指向我應該使用的正確方法嗎?這個方法是否會在相應的視圖中被調用?