Простая история Django history_change_reason - как установить экземпляр из класса - PullRequest
0 голосов
/ 06 июня 2019

Я подключил объект, чтобы использовать простую историю, и я вижу, что историческая таблица заполняется правильно. Я хотел бы также использовать поле history_change_reason для большего количества метаданных. Отличие от инструкций состоит в том, что в нашей системе мы используем objects.create_or_update внутри метода класса. Это работает, если я устанавливаю changeHistory на параметр класса. Тем не менее, я хотел бы установить его на экземпляр класса. Какой хороший способ сделать это?

class SimpleHistoryTest(models.Model):
   ....
   history = HistoricalRecords()
   ...

   @classmethod
   def update_or_create_override (cls, feature):
       ...

       cls.changeReason = features # this works. However, this is changed on all instances of class

       SimpleHistoryTest.objects.update_or_create(
        prop1='value1',    
       )
...