2012-03-05 3 views
0

Как создать модель со следующей функциональностью:Джанго модель замораживания

  1. Модель должна содержать «замороженных» единовременное булево предохранитель, он начинает, как значение False, и может изменить Верно, но только в один направление.
  2. Если предохранитель True, никаких изменений в экземпляре не должно быть.
  3. Система не должна влиять на использование интерфейса администратора - если плавкий предохранитель перегорел (True), все записи должны игнорироваться.

У меня возникла проблема с тем, как проверить, содержит ли версия базы данных экземпляра с перегоревшим предохранителем или нет, для данного экземпляра ORM.

ответ

0

Переопределение метода save вашей модели.

+0

И что с этим делать? Как я могу различить, является ли ** замороженным ** значение True или False в * базе данных * во время сохранения (состояние в памяти ** self.frozen ** может быть изменено и не может быть доверено) – qdot

+1

Возможно Model.objects .get (рк = self.pk) .frozen? будет ли это работать? – qdot

+0

Да, это было бы так. – AdamKG