Могу ли я установить параноик Django модель, которая действует как в Sequelize.js - PullRequest
0 голосов
/ 14 февраля 2019
// don't delete database entries but set the newly added attribute deletedAt
// to the current date (when deletion was done). paranoid will only work if
// timestamps are enabled
paranoid: true,

Я использовал Sequelize.js ORM, и там была опция параноик, как в приведенном выше описании.(из документации по учебнику Sequelize.js )

Я хочу сделать свою модель Django параноидальной.

Я гуглил с ключевыми словами типа "django paranoid", но не смогнайти информацию.Какое общее название для опции «параноик» и как я могу заставить мою модель django действовать как опция?Или я должен сделать миксин или промежуточное программное обеспечение для параноика?

1 Ответ

0 голосов
/ 13 августа 2019

, конечно, вы можете использовать django-paranoid

, эта библиотека добавит поля dele_at, updated_at и creation_at, а также метод мягкого удаления.

Вам нужно толькорасширить до модели с помощью ParanoidModel.

Для просмотра удаленного объекта вы можете использовать objects_with_deleted:

MyModel.objects_with_deleted.last()

, а если вы хотите действительно удалить объект, вы должны использовать только истинный параметр:

m = MyModel.objects.last()
m.delete(True)
...