def save(self, **kwargs): """ Override default save() method to set AFI, parent prefix, and check VRF group restrictions :param kwargs: :return: """ # Check VRF group restrictions cv = self.get_collision(self.vrf, self.address) if cv: # Collision detected raise ValidationError("Address already exists in VRF %s" % cv) # Detect AFI self.afi = self.get_afi(self.address) # Set proper prefix self.prefix = Prefix.get_parent(self.vrf, self.afi, self.address) super(Address, self).save(**kwargs)