Fixed previous instance checking, check for PK as well as instance

This commit is contained in:
2011-07-08 10:39:23 +01:00
parent 014d1bd107
commit e201f0153e

View File

@@ -40,15 +40,15 @@ class EveAPIForm(forms.ModelForm):
except ValueError:
raise forms.ValidationError("Please provide a valid user ID.")
if not getattr(self, 'instance', None):
if self.instance and self.instance.pk:
if not int(self.cleaned_data['api_user_id']) == self.instance.api_user_id:
raise forms.ValidationError("You cannot change your API User ID")
else:
try:
eaccount = EVEAccount.objects.get(api_user_id=self.cleaned_data['api_user_id'])
except EVEAccount.DoesNotExist:
pass
else:
raise forms.ValidationError("This API User ID is already registered")
else:
if not int(self.cleaned_data['api_user_id']) == self.instance.api_user_id:
raise forms.ValidationError("You cannot change your API User ID")
return self.cleaned_data['api_user_id']