handle nulls in UserColumn

pull/7574/head
Matt Westcott 2021-09-14 12:09:17 +01:00
rodzic 82d0e41969
commit 2b8a0661a7
2 zmienionych plików z 13 dodań i 6 usunięć

Wyświetl plik

@ -1,5 +1,5 @@
<td {% if column.classname %}class="{{ column.classname }}"{% endif %}>
{% if value %}
{% if display_name %}
{% include "wagtailadmin/shared/user_avatar.html" with user=value username=display_name %}
{% endif %}
</td>

Wyświetl plik

@ -156,15 +156,22 @@ class UserColumn(Column):
"""Outputs the username and avatar for a user"""
cell_template_name = "wagtailadmin/tables/user_cell.html"
def __init__(self, name, blank_display_name='', **kwargs):
super().__init__(name, **kwargs)
self.blank_display_name = blank_display_name
def get_cell_context_data(self, instance, parent_context):
context = super().get_cell_context_data(instance, parent_context)
user = context['value']
try:
full_name = user.get_full_name().strip()
except AttributeError:
full_name = ''
context['display_name'] = full_name or user.get_username()
if user:
try:
full_name = user.get_full_name().strip()
except AttributeError:
full_name = ''
context['display_name'] = full_name or user.get_username()
else:
context['display_name'] = self.blank_display_name
return context