Как покрасить ячейку таблицы в зависимости от содержания ячейки в админке Django

Мучаюсь с проблемой уже 3 дня. Стоит django-suit. Он умеет закрашивать ячейки и строки в нужный цвет - и все вроде работает, но только с обычными полями - если контент берется из другой модели через foreign key, то чтобы я не выдумывал - class css не подтягивается. Привожу только выжимку из кода - только затронутые кодом модели, а до этой модели используется еще абстрактный класс. На результат вроде влиять не должно. Прошу помочь - понимаю что решение очень простое, но никак не добиться работоспособности. Помогите пожалуйста новичку. Для меня Python еще язык новый.

Версия питона: 3.8.1 Версия django: 3.0.2

models.py:

from django.db import models
from imagekit.models import ImageSpecField, ProcessedImageField
from imagekit.processors import ResizeToFill

class Function(models.Model):
    function_name = models.TextField("Функция устройства", max_length = 30, unique=True, help_text="Поле должно быть уникальным. ", )

    def __str__(self):
        return self.function_name

    class Meta:
        verbose_name = 'Функция устройства'
        verbose_name_plural = 'Функции устройств'

class PersonalComputer(AbstractDevices):
    inv_number = models.CharField("Инвентарный номер", max_length = 30, unique=True, help_text="Поле должно быть уникальным. ")
    invenory_pass =models.BooleanField(verbose_name='Инвентаризация:', default=False, help_text="Отметить если устройство прошло инвентаризацию ")
    decomission_on =models.BooleanField(verbose_name='Списан:', default=False, help_text="Отметить если устройство списано")
    pc_type = models.ForeignKey(PcType, blank = True, null = True, on_delete=models.DO_NOTHING, verbose_name='Тип компьютера:')
    function_name = models.ForeignKey(Function, blank=True, null = True, on_delete=models.DO_NOTHING, verbose_name='Функция устройства:')

    def __str__(self):
        return self.inv_number

admin.py

PersonalComputerForm = select2_modelform(PersonalComputer, attrs={'width': '250px'})

class PersonalComputerAdmin(ImportExportModelAdmin, admin.ModelAdmin):


    resource_class = PersonalComputerResource

    form = PersonalComputerForm
######## Блок отображения списка компьютеров ##########
    ### Подсоединяем встроенные формы ###

    inlines = (EthernetInline, MonitorInline, ProjectorInline, PrinterInline, MultimediaDeviceInline)
    #form = PersonalComputerForm


    ### Указываем поля, которые хотим видеть на странице списка компьютеров ###

    list_display = ['inv_number', 'decomission_on',  'invenory_pass',  'global_inv_number', 'pc_type','colored_function_name', 'Кабинет', 'supplier_name', 'manufacturer_name', 'device_model', 'serial_number', 'get_os', 'owner',]

    ### Включаем поле поиска и указываем поля, по которым будет происходить поиск ###
    list_editable = ['invenory_pass', 'decomission_on']
    search_fields = ['inv_number', 'global_inv_number', 'device_model__device_model', 'serial_number', 'manufacturer_name__manufacturer_name', 'supplier_name__supplier_name', 'owner__owner', ]


    ### Включаем фильтр по некоторым полям. ###

    list_filter = (
        ('pc_type', admin.RelatedOnlyFieldListFilter),
        ('function_name', admin.RelatedOnlyFieldListFilter),
        ('supplier_name', admin.RelatedOnlyFieldListFilter),
        ('os_name', admin.RelatedOnlyFieldListFilter),
        ('owner', admin.RelatedOnlyFieldListFilter),
        ('invenory_pass'),
        StatusFilter,
    )
    ### Переносим фильтр к форме поиска в горизонтальное положение ###
    suit_list_filter_horizontal = ('pc_type', 'function_name', 'supplier_name', 'owner', 'os_name', 'invenory_pass', 'decomission_on')

    def get_os(self, obj):
        return ",\n\n".join([p.os_name for p in obj.os_name.all()])

    def get_function_name(self, obj):
        return obj.function_name

### Окрашиваем ячейки  - рабочий вариант###

    def suit_cell_attributes(self, obj, column):
        if column == 'invenory_pass':
            cls = 'text-xs-center'
            if obj.invenory_pass == 1:
                cls += ' table-info'
            return {'class': cls}

### Окрашиваем строку - тоже рабочий ###

    def suit_row_attributes(self, obj, request):
        decomission_on = {

            1: 'table-danger',

        }

        css_class = decomission_on.get(obj.decomission_on)
        if css_class:
            return {'class': css_class}

### ПРоблемное место: не окрашивается ячейка ###

     def colored_function_name(self, obj, column):
         if column == 'function_name':
            cls = 'text-xs-center'
            if obj.function_name == "Sysadmin": 
### сюда пробовал вставлять и просто id foreign key цифрой (if obj.function_name == 14)
### Также пробовал переводить сначала результат в string а потом делать проверку - не выходит... :(
                cls += ' table-warning'
            return {'class': cls}


Ответы (0 шт):