diff --git a/openstack_dashboard/dashboards/project/stacks/mappings.py b/openstack_dashboard/dashboards/project/stacks/mappings.py index d5963eef85..145e41e5f3 100644 --- a/openstack_dashboard/dashboards/project/stacks/mappings.py +++ b/openstack_dashboard/dashboards/project/stacks/mappings.py @@ -116,7 +116,9 @@ resource_urls = { def resource_to_url(resource): - if not resource or not resource.physical_resource_id: + if (not resource or + not resource.physical_resource_id or + not hasattr(resource, 'resource_type')): return None mapping = resource_urls.get(resource.resource_type, {}) diff --git a/openstack_dashboard/dashboards/project/stacks/tables.py b/openstack_dashboard/dashboards/project/stacks/tables.py index afb78b05a7..324b4c2ebc 100644 --- a/openstack_dashboard/dashboards/project/stacks/tables.py +++ b/openstack_dashboard/dashboards/project/stacks/tables.py @@ -313,8 +313,7 @@ class EventsTable(tables.DataTable): verbose_name=_("Stack Resource"), link=get_resource_url) physical_resource = tables.Column('physical_resource_id', - verbose_name=_("Resource"), - link=mappings.resource_to_url) + verbose_name=_("Resource")) timestamp = tables.Column('event_time', verbose_name=_("Time Since Event"), filters=(filters.parse_isotime,