def restore_object(self, attrs, instance=None): request_user = self.context['request'].user username = attrs.get('username') if UserProfile.objects.filter(mnemonic=username).exists(): self._errors['username'] = '******' % username return None email = attrs.get('email') user = User(username=username, email=email) profile = UserProfile(full_name=attrs.get('name'), mnemonic=username) profile.created_by = request_user profile.updated_by = request_user profile.hashed_password = attrs.get('hashed_password', None) profile.company = attrs.get('company', None) profile.location = attrs.get('location', None) profile.preferred_locale = attrs.get('preferred_locale', None) profile.extras = attrs.get('extras', None) profile._user = user return profile