Index: admin_list.py
===================================================================
--- admin_list.py	(revision 17942)
+++ admin_list.py	(working copy)
@@ -174,7 +174,14 @@
         row_class = ''
         try:
             f, attr, value = lookup_field(field_name, result, cl.model_admin)
-        except (AttributeError, ObjectDoesNotExist):
+        except (AttributeError, ObjectDoesNotExist) as e:
+            if isinstance(e, AttributeError):
+                if str(e):
+                    import re
+                    err_msg = re.match(r'\'([\w]+)\'', str(e))
+                    if err_msg is not None and not(err_msg.groups()[0]==cl.model._meta.object_name):
+                    #distinguish between errors raised by the model or any other object
+                        raise e
             result_repr = EMPTY_CHANGELIST_VALUE
         else:
             if f is None:
