Задать вопрос

Миграция данных существующей модели в MPTTModel?

Имеется модель с данными. Установил django-mptt, но как мне теперь мигрировать данные из старой модели в новую MPTTModel?
Tag(models.Model):
    name = models.CharField(u'Название', max_length=255, unique=True)
    parent = models.ForeignKey('self', verbose_name='Родительский тег', null=True, blank=True, related_name='children')


сделать:
Tag(MPTTModel):
    name = models.CharField(u'Название', max_length=255, unique=True)
    parent = TreeForeignKey('self', on_delete=models.CASCADE, verbose_name='Родительский тег', null=True, blank=True, related_name='children')


Когда делаю makemigrations, то меня просят проставить дефолтные значения, но после migrate все теги превращаются в одноуровневые теги, без вложенных тегов.
  • Вопрос задан
  • 110 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Django
Седой и строгий
$ python manage.py shell

In [1]: from some_app.models import Tag
In [2]: Tag.objects.rebuild()
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы