Удалить файл миграции Django перед запуском команды migrate? - PullRequest
1 голос
/ 18 апреля 2019

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

from django.db import models
from django.contrib.auth.models import User
from PIL import Image

class Profile(models.Model):
    account = models.OneToOneField(User, on_delete = models.CASCADE)
    image = models.ImageField(default = 'default.jpg', upload_to='profile_pics')
    user_level = models.IntegerField(default = 1)

    def __str__(self):
        return '%s Profile' % self.account.username

Я решил внести изменения в модель, изменив поле user_level на level_rank и указав отношениев поле другой модели:

from django.db import models
from django.contrib.auth.models import User
from level_system.models import UserLevel
from PIL import Image

class Profile(models.Model):
    account = models.OneToOneField(User, on_delete = models.CASCADE)
    image = models.ImageField(default = 'default.jpg', upload_to='profile_pics')
    level_rank = models.ForeignKey(UserLevel, on_delete = models.SET_NULL, null = True)

    def __str__(self):
        return '%s Profile' % self.account.username

Затем я запускаю команду makemigrations, но потом решаю, что хочу изменить что-то еще в модели профиля.

Каковы последствия простоудалить файл миграции, который был создан, когда я выполнил команду makemigrations?

По сути, мой вопрос: это может привести к путанице в системе миграции и повредить базу данных, или вы можете свободно удалить файл миграции, который имеет NOT еще не перенесли?

Я сейчас использую Django v2.0.13

Спасибо!

1 Ответ

0 голосов
/ 19 апреля 2019

Спасибо тем, кто прокомментировал. Я решил сделать решающий шаг и удалить файл миграции перед миграцией. Я еще не сталкивался с какими-либо проблемами, хотя изменение моей модели было незначительным (изменилось только одно поле), поэтому всем, кто читает это, я все равно рекомендую осторожность.

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