Django-picklefield изменяет структуру после обновления

Я переношу приложение Django с 1.11.16 на 4.0.5 и django-picklefield также будет перенесен с 2.0 на 3.1 .

Объект django имеет следующую строку:

from picklefield.fields import PickledObjectField

class A(models.Model):
    ...
    log_list = PickledObjectField(default=list)

.

Использование старого кода (1.11.16) и нового кода (4.0.5) приводит к совершенно разным результатам для запроса:

#old
Obj.objects.get(id=4737).log_list
[{u'date': datetime.datetime(2022, 6, 27, 12, 54, 50, 746392),
u'message': u'Fetching trademark search started',
u'typ': u'info'},
{u'date': datetime.datetime(2022, 6, 27, 12, 54, 53, 423384),
u'message': u'Fetching trademark search finished',
u'typ': u'info'}]
#type == list

#new
Obj.objects.get(id=4737).log_list
gAJdcQEofXECKFgEAAAAZGF0ZXEDY2RhdGV0aW1lCmRhdGV0aW1....
#so it results exactly what is stored in the db.
#type == str

В версии picklefield 3.1 есть ли что-то еще, что я должен сделать / изменить, чтобы иметь поведение, чем в версии == 2.0? Что я должен сделать с новой установкой, чтобы получить список вместо строки?

Вернуться на верх