diff options
| author | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-11-19 23:50:37 +0100 |
|---|---|---|
| committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2012-11-19 23:50:37 +0100 |
| commit | f769930eca0a0bbccf991e52c6c6abbba6414390 (patch) | |
| tree | 9f1e40fde488122a4809787c3dba59dab8be8d1b | |
| parent | f77c4859fa9927155a5fb2be14c2c5ffb9469279 (diff) | |
| parent | c9d084af8ce719a07d507869d547825835d70a50 (diff) | |
| download | Chimère-f769930eca0a0bbccf991e52c6c6abbba6414390.tar.bz2 Chimère-f769930eca0a0bbccf991e52c6c6abbba6414390.zip | |
Merge branch 'master' into saclay
| -rw-r--r-- | chimere/forms.py | 2 | ||||
| -rw-r--r-- | chimere/tests.py | 7 |
2 files changed, 8 insertions, 1 deletions
diff --git a/chimere/forms.py b/chimere/forms.py index c6998c8..be68205 100644 --- a/chimere/forms.py +++ b/chimere/forms.py @@ -544,6 +544,8 @@ class AreaAdminForm(forms.ModelForm): raise forms.ValidationError(msg) if self.cleaned_data.get('order'): q = Area.objects.filter(order=self.cleaned_data.get('order')) + if self.instance: + q = q.exclude(pk=self.instance.pk) if q.count(): msg= _(u"The area \"%s\" has the same order, you need to " u" choose another one.") % unicode(q.all()[0]) diff --git a/chimere/tests.py b/chimere/tests.py index 61a4dd6..049fbbe 100644 --- a/chimere/tests.py +++ b/chimere/tests.py @@ -299,9 +299,14 @@ class AreaAdminFormTest(TestCase): 'lower_right_corner':'SRID=4326;POINT(0 0)'} # order already given data = base_data.copy() - data['order'] = 1 + data['order'] = self.areas[0].order form = AreaAdminForm(data) self.assertEqual(form.is_valid(), False) + # update an already existing area + data = base_data.copy() + data['order'] = self.areas[0].order + form = AreaAdminForm(data, instance=self.areas[0]) + self.assertEqual(form.is_valid(), True) # empty area data = base_data.copy() data.update({'upper_left_lat': 0, |
