Link to the user details from action log

The "User ID" column in the action log is not very usable, showing
an unreadable ID of the user, instead of the user name. However,
getting the name of the user for every row could prove expensive.
Therefore, I'm turning the ID into a link to the user details page,
so that it's easier to see what user it means.

Change-Id: Ic07903a145ee4a3decc71f12717ed06e84fed0eb
This commit is contained in:
Radomir Dopieralski 2016-11-11 15:21:55 +01:00
parent 22b71f7c26
commit 36ed065ed6
1 changed files with 8 additions and 1 deletions

View File

@ -13,6 +13,7 @@
# under the License.
from django.core import urlresolvers
from django.utils.translation import pgettext_lazy
from django.utils.translation import ugettext_lazy as _
@ -20,6 +21,11 @@ from horizon import tables
from horizon.utils import filters
def user_link(datum):
return urlresolvers.reverse("horizon:identity:users:detail",
args=(datum.user_id,))
class AuditTable(tables.DataTable):
ACTION_DISPLAY_CHOICES = (
("create", pgettext_lazy("Action log of an instance", u"Create")),
@ -42,7 +48,8 @@ class AuditTable(tables.DataTable):
display_choices=ACTION_DISPLAY_CHOICES)
start_time = tables.Column('start_time', verbose_name=_('Start Time'),
filters=[filters.parse_isotime])
user_id = tables.Column('user_id', verbose_name=_('User ID'))
user_id = tables.Column('user_id', verbose_name=_('User ID'),
link=user_link)
message = tables.Column('message', verbose_name=_('Message'))
class Meta(object):