From: olivier <>
Date: Mon, 15 Feb 2010 11:47:10 +0000 (+0000)
Subject: fix searching by ethnic group
X-Git-Tag: 1.1~537
X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=ecdf4882c3b8d487d177e1bbf33e24ee5bd001b2;p=telemeta.git
fix searching by ethnic group
---
diff --git a/telemeta/models/enum.py b/telemeta/models/enum.py
index 619a11d1..4d33bd10 100644
--- a/telemeta/models/enum.py
+++ b/telemeta/models/enum.py
@@ -135,6 +135,7 @@ class EthnicGroup(ModelCore):
 
     class Meta(MetaCore):
         db_table = 'ethnic_groups'
+        verbose_name = _('population / social group')
 
     def __unicode__(self):
         return self.name
diff --git a/telemeta/models/query.py b/telemeta/models/query.py
index 640116c8..a3f0e08d 100644
--- a/telemeta/models/query.py
+++ b/telemeta/models/query.py
@@ -36,6 +36,7 @@
 from django.db.models import Q
 from telemeta.models.core import *
 from telemeta.util.unaccent import unaccent, unaccent_icmp
+from telemeta.models.enum import EthnicGroup
 import re
 
 class MediaItemQuerySet(CoreQuerySet):
@@ -154,9 +155,8 @@ class MediaItemQuerySet(CoreQuerySet):
         return qs                
 
     def ethnic_groups(self):
-        return self.filter(ethnic_group__isnull=False) \
-               .values_list('ethnic_group__name', flat=True) \
-               .distinct().order_by('ethnic_group__name')        
+        ids = self.filter(ethnic_group__isnull=False).values('ethnic_group');
+        return EthnicGroup.objects.filter(pk__in=ids).order_by('name')
 
 class MediaItemManager(CoreManager):
     "Manage media items queries"
@@ -227,7 +227,7 @@ class MediaCollectionQuerySet(CoreQuerySet):
 
     def by_ethnic_group(self, group):
         "Find collections by ethnic group"
-        return self.filter(items__ethnic_group__name=group).distinct()
+        return self.filter(items__ethnic_group=group).distinct()
 
     def by_change_time(self, from_time=None, until_time=None):
         "Find collections between two dates"
diff --git a/telemeta/templates/telemeta_default/search_criteria.html b/telemeta/templates/telemeta_default/search_criteria.html
index d81df268..77d9ce12 100644
--- a/telemeta/templates/telemeta_default/search_criteria.html
+++ b/telemeta/templates/telemeta_default/search_criteria.html
@@ -34,7 +34,7 @@ $(document).ready(function () {
     
 
     
-    
+