Vindicar, про property не знал, попробую сделать так. Это поле будет так же работать? Просто все поля категорий у меня собираются в списке типа - [x.pk_for_telegram for x in Category.objects.all()], будет ли этот генератор работать при property?
Вот в том то проблема) Я в этом поле присваиваю строчку для того что бы в телеграм боте идентифицировать категорию, для этого там должно быть что то уникальное, slug использовать не вариант, так как в телеграмме есть ограничение на длину строчки. А уникальный id присваивается только после сохранения в базу данных. Так и получается: сохраняю без строчки -> присваивается id записи -> в строке pk_for_telegram - добавляется запись. Все работает как надо, но я хочу протестировать свой сайт, и из за этого маленького недоразумения у меня это не получается. Я думаю сохранять это поле не в самой модели, а в представлениях, но для этого нужно переопределять метод сохранения в CreateView. И вот думаю может есть какой то другой вариант обойти это в тестах.
Vindicar, super(Category, self).save(*args, **kwargs) в переопределении метода save(). Если я оставляю один тест, ошибка повторяется, если убираю один из super(Category, self).save(*args, **kwargs), ошибка исчезает