Предположим что вы используете несколько баз данных в вашем проекте, одна из них основная, другая уже содержит какие-то данные.
При работе с основной БД вы часто будете использовать команды:
$ django-admin migrate ...
$ django-admin flush
Эти команды непосредственно влияют на структуру и содержимое БД, migrate – синхронизирует базу с миграциями, flush – удаляет все данные из таблиц.
managed = False
исключает БД из влияния на нее миграций и очистки таблиц т.е. вы можете выполнять эти действия не опасаясь за сохранность существующих данных и структуры существующей базы. В остальном Django работает с этими моделями в привычном режиме.
class YourModel(models.Model):
name = models.CharField(max_length=255)
class Meta:
managed = False
Другие публикации из блога
Django\Nginx 403 Forbidden Error при доступе к media
Скорее всего ошибка возникает из-за неверных прав доступа к папке media и её поддиректориям. Исправляется командой:
…
Подробнее
Как проверить позицию бита в числе с помощью Python?
Понимание установлен ли бит в определенной позиции двоичного числа (репрезентации целого числа в двоичной системе) явля…
Подробнее
Как предотвратить билд образа Docker из кэша?
При билде образа Docker создает кэши что не всегда бывает удобно и занимает много места на сервере. Для экономии места …
Подробнее
Ошибка при установке пакетов с помощью yarn install
При попытке установить пакеты с помощью yarn install возникает ошибка вида:
yarn install
YN0000: · Yarn 4.1.0
YN…
Подробнее
Разница между операторами "is" и "==" в Python
Оба оператора is и == предназначены для сравнения объектов в Python.
Оператор == сравнивает два значения.
Операто…
Подробнее
Скрыть\показать пароль в input
See the Pen
Show\hide password in input field by Denis (@m5dev)
on CodePen.
Подробнее