Makemigration с django4.0.6 и python3.10.5 не работает
В настоящее время я кодирую блог в качестве побочного проекта, и всякий раз, когда я вношу значительные изменения в свои модели, я не могу мигрировать.
Это моя модель
from ckeditor.fields import RichTextField
from django.contrib.auth.models import User
from django.db import models
from django.template.defaultfilters import slugify
from django.urls import reverse
class Tag(models.Model):
name = models.CharField(max_length=255, default="Uncategorized")
class Meta:
ordering = ['name']
def __str__(self):
return self.name
def get_absolute_url(self):
return reverse('blog:home')
class Post(models.Model):
ACTIVE = 'active'
DRAFT = 'draft'
CHOICE_STATUS = (
(ACTIVE, 'Active'),
(DRAFT, 'Draft')
)
title = models.CharField(max_length=255)
title_color = models.CharField(max_length=50, default="white")
header_image = models.ImageField(upload_to='images/headers', null=True, blank=True)
author = models.ForeignKey(User, on_delete=models.CASCADE)
table_content = RichTextField(default="CONTENTS", blank=True, null=True)
body = RichTextField(blank=True, null=True)
snippet = models.CharField(max_length=255, default="")
date_published = models.DateTimeField(auto_now_add=True)
status = models.CharField(max_length=10, choices=CHOICE_STATUS, default=DRAFT)
slug = models.SlugField()
tag = models.ManyToManyField(Tag)
def __str__(self):
return self.title + ' | ' + self.author.get_full_name()
def get_absolute_url(self):
return reverse('blog:article_details', args=(str(self.id), self.slug))
@property
def date(self):
return self.date_published.date()
def save(self, *args, **kwargs):
if not self.slug:
self.slug = slugify(self.title)
return super().save(*args, **kwargs)
class PostPicture(models.Model):
name = models.CharField(max_length=255, default="")
files = models.FileField(upload_to="images/post")
def __str__(self):
return self.name
Теперь, в моей модели, у меня был класс с именем Category, я решил, что он мне больше не нужен и просто переименовал его в Tag.
Когда я делаю миграции, у меня возникает эта ошибка
Я также пробовал
python3 manage.py makemigrations blog
или
python3 manage.py makemigrations --dry-run --verbosity 3
или
python3.10 manage.py makemigrations --dry-run --verbosity 3
У меня также возникает такая же ошибка, когда я запускаю:
python3 manage.py test
Только ли у меня возникает эта ошибка?
Когда я закомментировал все части кода, которые могли ссылаться на Category (поскольку я использую представление на основе классов) и снова запустил makemigrations, он работает, благодаря KenWhitesell. Я не знаю, означает ли это, что что-то не так с представлением на основе классов и мне нужно перейти на представление на основе функций?