Commit 556908535b47d6cc928c041532529e552f1d53b3
1 parent
d1823e72
Exists in
master
and in
2 other branches
Adjusting validation for subject name in forms.py
Showing
1 changed file
with
6 additions
and
6 deletions
Show diff stats
subjects/forms.py
@@ -58,11 +58,11 @@ class CreateSubjectForm(forms.ModelForm): | @@ -58,11 +58,11 @@ class CreateSubjectForm(forms.ModelForm): | ||
58 | 58 | ||
59 | def clean_name(self): | 59 | def clean_name(self): |
60 | name = self.cleaned_data.get('name') | 60 | name = self.cleaned_data.get('name') |
61 | + categoria = self.instance.category | ||
61 | if self.instance.id: | 62 | if self.instance.id: |
62 | - same_name = Subject.objects.filter(name__unaccent__iexact = name).exclude(id = self.instance.id) | 63 | + same_name = Subject.objects.filter(name__unaccent__iexact = name, category = categoria).exclude(id = self.instance.id) |
63 | else: | 64 | else: |
64 | - same_name = Subject.objects.filter(name__unaccent__iexact = name) | ||
65 | - | 65 | + same_name = Subject.objects.filter(name__unaccent__iexact = name, category = categoria) |
66 | if same_name.count() > 0: | 66 | if same_name.count() > 0: |
67 | self._errors['name'] = [_('There is another subject with this name, try another one.')] | 67 | self._errors['name'] = [_('There is another subject with this name, try another one.')] |
68 | 68 | ||
@@ -161,11 +161,11 @@ class UpdateSubjectForm(forms.ModelForm): | @@ -161,11 +161,11 @@ class UpdateSubjectForm(forms.ModelForm): | ||
161 | 161 | ||
162 | def clean_name(self): | 162 | def clean_name(self): |
163 | name = self.cleaned_data.get('name') | 163 | name = self.cleaned_data.get('name') |
164 | + categoria = self.instance.category | ||
164 | if self.instance.id: | 165 | if self.instance.id: |
165 | - same_name = Subject.objects.filter(name__unaccent__iexact = name).exclude(id = self.instance.id) | 166 | + same_name = Subject.objects.filter(name__unaccent__iexact = name , category = categoria).exclude(id = self.instance.id) |
166 | else: | 167 | else: |
167 | - same_name = Subject.objects.filter(name__unaccent__iexact = name) | ||
168 | - | 168 | + same_name = Subject.objects.filter(name__unaccent__iexact = name).exclude(category = categoria) |
169 | if same_name.count() > 0: | 169 | if same_name.count() > 0: |
170 | self._errors['name'] = [_('There is another subject with this name, try another one.')] | 170 | self._errors['name'] = [_('There is another subject with this name, try another one.')] |
171 | 171 |