我的models.py代码中存在OperationalError。 任何人都可以查明问题吗? 我尝试删除缓存(以及之前的迁移)并执行它们 - 没有帮助解决这个问题。
from django.db import models
# Create your models here.
class Topic(models.Model):
"""A post within a blog."""
text = models.CharField(max_length=200)
date_added = models.DateTimeField(auto_now_add=True)
def __str__(self):
"""Return a string representation of a model."""
return self.text
class Post(models.Model):
"""Class for Blog Post entries."""
topic = models.ForeignKey(Topic)
text = models.TextField()
date_added = models.DateTimeField(auto_now_add=True)
class Meta:
verbose_name_plural = 'posts'
def __str__(self):
"""Return a string representation of the model."""
return self.text[:50] + "..."
如果有帮助,它会给我以下错误:
OperationalError at /admin/blogs/post/
no such table: blogs_post
admin.py:
from django.contrib import admin
# Register your models here.
from blogs.models import Topic, Post
admin.site.register(Topic)
admin.site.register(Post)
答案 0 :(得分:0)
如果更改了类名,那么您可能拥有旧类名的对象,而迁移无法找到该表。
删除项目文件夹中的db.sqlite3
文件。删除所有以前的迁移。然后makemigrations
然后migrate
。这基本上会重置所有内容并删除所有对象。您之后也必须重新创建超级用户。
希望这有帮助,。