【发布时间】:2019-09-26 01:27:07
【问题描述】:
我在我的项目中编写了一些模型,然后我从我的书籍模型中删除了一个 uuid 字段并删除了 0001_initial.py 文件并运行 make migrations 和 migrate
但是当我运行 py manage.py migrate 时,显示这条消息:
- 没有要应用的迁移。
当运行 makemigrations 时:
“main_app”的迁移:
main_app\migrations\0001_initial.py
创建模型作者
创建模型书
创建模型类型
向书籍添加领域类型
这是我的模型:
class Genre(models.Model):
genre = models.CharField(max_length=100)
def __str__(self):
return self.genre
class Book(models.Model):
book_name = models.CharField(max_length=150)
summary = models.TextField(max_length=1000, null=True,blank=True)
author = models.ForeignKey('Author', on_delete=models.CASCADE)
genre = models.ManyToManyField(Genre)
status = [
('a', 'available'),
('b', 'borrowed'),
('r', 'reserved'),
]
book_status = models.CharField(max_length=1, choices=status, default='a')
isbn = models.CharField(max_length=13,
help_text='read '
'<a href="https://www.isbn-international.org/content/what-isbn">'
'here'
'</a>'
' to help ')
def __str__(self):
return '{0}({1})'.format(self.book_name, self.author)
def get_absolute_url(self):
return reverse('main_app:book-detail', args=[self.id])
class Author(models.Model):
first_name = models.CharField(max_length=200)
last_name = models.CharField(max_length=200)
rate = models.IntegerField(default=0)
def __str__(self):
return '{0} {1}'.format(self.first_name,self.last_name)
【问题讨论】:
-
我不确定是否可以提供帮助 - 但我真的不确定您为什么只删除了第一次迁移。当您遇到这样的 db/migration 问题时,我的建议是删除所有迁移,然后再次运行
makemigrations(当然,接下来是migrate) -
如果删除迁移,还需要删除数据库。但不要删除迁移。
标签: python django postgresql