              url_name = 'admin:%s_%s_change' % (self.content_type.app_label, self.content_type.model)
              try:
                  return reverse(url_name, args=(quote(self.object_id),))
          return None
 
</s> remove             with suppress(NoReverseMatch):
 </s> add             try: </s> remove             with suppress(OSError):
 </s> add             try:
            except NoReverseMatch:
                pass
              url_name = 'admin:%s_%s_change' % (self.content_type.app_label, self.content_type.model)
              try:
                  return reverse(url_name, args=(quote(self.object_id),))
            except NoReverseMatch:
                pass
          return None
keep keep add keep
 Reverted "Fixed #27818 -- Replaced try/except/pass with contextlib.suppress()."

This reverts commit 550cb3a365dee4edfdd1563224d5304de2a57fda
because try/except performs better. 
django/contrib/admin/models.py