Как удалить запись из БД, при этом оставив у связанных моделей название удаляемой модели?

Нужна помощь. Уже 3 дня не могу придумать как сделать так, чтобы при удалении записи из таблицы "Категории", в БД у связанных записей оставалось название удаляемой категории, а не Null. У меня вот такие модели:

class Categories(models.Model):
    constant_cat = 'constant'  # постоянные
    once_cat = 'once'  # разовые
    CAT_TYPES = [
        (constant_cat, 'Постоянные'),
        (once_cat, 'Разовые'),
    ]

    income_cat = 'income'
    outcome_cat = 'outcome'

    CAT_INCOME_OUTCOME = [
        (income_cat, 'Категория доходов'),
        (outcome_cat, 'Категория расходов'),
    ]

    user = models.ForeignKey(User, on_delete=models.CASCADE, verbose_name='Пользователь')
    category_name = models.CharField(max_length=255, default="Название категории", verbose_name='Название категории',
                                     unique=True)
    category_type = models.CharField(max_length=8, choices=CAT_TYPES, default=constant_cat)
    income_outcome = models.CharField(max_length=11, choices=CAT_INCOME_OUTCOME, default=income_cat)

    def __str__(self):
        return self.category_name


class AbstractCash(models.Model):
    class Meta:
        abstract = True

    user = models.ForeignKey(User, on_delete=models.CASCADE, verbose_name='Пользователь')
    sum = models.DecimalField(max_digits=19, decimal_places=2, verbose_name='Сумма')
    categories = models.ForeignKey(Categories, on_delete=models.SET_NULL, verbose_name='Категория',
                                   null=True, blank=True)
    date = models.DateField(verbose_name='Дата записи')
    date_record = models.DateTimeField(auto_now_add=True, verbose_name='Дата создания записи')

    def __str__(self):
        return f'{str(self.categories)} {str(self.date)}'

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