def validate(self, data):
if 'start' in data and 'end' in data:
if data['start'] > data['end']:
raise serializers.ValidationError('Start date must be after end date')
if not self.instance:
date_range = DateTimeTZRange(data['start'], data['end'])
overlaps = EquipmentReservation.objects.filter(
reservation__overlap=date_range,
equipment_reserved=data['equipment_reserved']).count()
if overlaps > 0:
raise serializers.ValidationError(
'Equipment has already been reserved during this time period')
return data
评论列表
文章目录