From 2270d2b21c2b928c9a6c90afbd0069bd126656ad Mon Sep 17 00:00:00 2001 From: Étienne Loks Date: Thu, 26 May 2016 00:07:19 +0200 Subject: Property models are now filtered by area in getDetail --- chimere/forms.py | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) (limited to 'chimere/forms.py') diff --git a/chimere/forms.py b/chimere/forms.py index 0d866a7..580fb09 100644 --- a/chimere/forms.py +++ b/chimere/forms.py @@ -25,7 +25,7 @@ from django import forms from django.conf import settings from django.core.exceptions import ImproperlyConfigured from django.core.urlresolvers import reverse -from django.db.models import Q, Count +from django.db.models import Q from django.forms.formsets import formset_factory from django.utils.translation import ugettext as _ from django.contrib.auth.models import User, Permission, ContentType @@ -273,13 +273,7 @@ class MarkerAdminFormBase(forms.ModelForm): area_name = None if 'area_name' in keys: area_name = keys.pop('area_name') - q = PropertyModel.objects.filter(available=True) - if area_name: - # areas__count__gt=0 necessary to prevent Django bug - q = q.annotate(Count('areas'))\ - .filter( - (Q(areas__urn=area_name) & Q(areas__count__gt=0)) | - Q(areas__count=0)) + q = PropertyModel.getAvailable(area_name=area_name) self.pms = [pm for pm in q.all()] if 'instance' in keys and keys['instance']: instance = keys['instance'] @@ -432,13 +426,7 @@ class RouteAdminForm(forms.ModelForm): area_name = None if 'area_name' in keys: area_name = keys.pop('area_name') - q = PropertyModel.objects.filter(available=True) - if area_name: - # areas__count__gt=0 necessary to prevent Django bug - q = q.annotate(Count('areas'))\ - .filter( - (Q(areas__urn=area_name) & Q(areas__count__gt=0)) | - Q(areas__count=0)) + q = PropertyModel.getAvailable(area_name=area_name) self.pms = [pm for pm in q.all()] if 'instance' in keys and keys['instance']: instance = keys['instance'] -- cgit v1.2.3