def create(self, validated_data):
locations = validated_data.pop('locations')
relationship_type = validated_data.pop('relationship_type')
person = Person(**validated_data)
person.save()
if not locations:
raise ValidationError('People must have at least one address.')
for location in locations:
location = Location(**location)
location.save()
associated_location = AssociatedLocation(
location=location, person=person)
associated_location.save()
relationship = Relationship(
relationship_type=relationship_type,
from_person=self.context['user'].person,
to_person=person
)
relationship.save()
return person
评论列表
文章目录