【发布时间】:2020-04-27 17:56:22
【问题描述】:
我做了什么:
- 我删除了数据库
- 删除了 pycache 文件和迁移文件
- python manage.py makemigrations app_name 和 python manage.py migrate app_name
- 多次关闭服务器
但这是我收到的错误:
settings.py
INSTALLED_APPS = [
'blog',
'users',
'crispy_forms',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
users/models.py
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
image = models.ImageField(default='default.jpg', upload_to='profile_pics')
def __str__(self):
return f'{self.user.username} Profile'
def save(self, *args, **kwargs):
super().save()
img = Image.open(self.image.path)
if img.height > 300 or img.width > 300:
output_size = (300, 300)
img.thumbnail(output_size)
img.save(self.image.path)
blog/models.py
class Post(models.Model):
title = models.CharField(max_length=100)
content = models.TextField()
date_posted = models.DateTimeField(default=timezone.now)
author = models.ForeignKey(User, on_delete=models.CASCADE)
def __str__(self):
return self.title
def get_absolute_url(self):
return reverse('post-detail', kwargs={'pk': self.pk})
【问题讨论】:
-
如果您在迁移时特别提及您的应用名称,您必须为您的两个应用都这样做,否则不要提及应用名称,因此如果有任何更改,迁移将应用于所有应用发生在模特身上
标签: python django django-models database-migration