Pokemon.types should order by slot. #220
[zzz-pokedex.git] / pokedex / lookup.py
index ce5bb76..f029b77 100644 (file)
@@ -290,15 +290,17 @@ class PokedexLookup(object):
 
         Returns None for a bogus name.
         """
+        # Table object
         if hasattr(name, '__tablename__'):
             return getattr(name, '__tablename__')
-        elif name in self.indexed_tables:
-            return name
-        elif name + 's' in self.indexed_tables:
-            return name + 's'
-        else:
-            # Bogus.  Be nice and return dummy
-            return None
+
+        # Table name
+        for table in self.indexed_tables.values():
+            if name in (table.__tablename__, table.__singlename__):
+                return table.__tablename__
+
+        # Bogus.  Be nice and return dummy
+        return None
 
     def _whoosh_records_to_results(self, records, exact=True):
         """Converts a list of whoosh's indexed records to LookupResult tuples