Django - лучший способ создания снимков объектов - PullRequest
0 голосов
/ 29 октября 2019

В настоящее время я работаю над проектом Django 2+, включающим блокчейн, и хочу сделать копии некоторых состояний моего объекта в этот блокчейн.

По сути, у меня есть модель (скажем, «контракт»)), который имеет список из нескольких «подписных» объектов.

Я хочу сделать снимок этого договора с подписями. Что я в основном делаю, так это беру контракт в какой-то момент времени (например, когда он создается) и создаю из него JSON.

Моя проблема заключается в следующем: я хочу обновить этот снимок каждый раз, когда добавляется подпись /обновляется / удаляется, и каждый раз, когда изменяется контракт.

Интуитивно понятным решением было бы переопределение каждого "удаления", "создания", "обновления" каждой моделей, участвующих вэтот снимок, и молюсь, чтобы все они были реализованы правильно, и что я ничего не забыл. Но я думаю, что это совсем не масштабируемо, сложно отладить и поддерживать.

Я подумал о решении, которое может быть более централизованным: использование периодического задания для получения даты последнего обновления моего объекта,сравните его с датой моего снимка и при необходимости обновите снимок.

Однако с этим решением я могу определить изменения при изменении или создании объектов, но не при их удалении.

Итак, это мой большой вопросительный знак: как с помощью django вы можете идентифицировать удаления в отношениях без какого-либо предварительного контекста, просто взглянув на текущее состояние базы данных? Есть ли модуль django для записи удаленных объектов? Что вы думаете о моей проблеме?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...