django - Django - 关系“app_name_modelname”不存在
问题描述
我已将我的应用程序部署到 DigitalOcean。除了这种情况,一切正常。我添加了新GeneralComplaintDocument
模型,在本地进行了迁移,从 Github 上提取了 DigitalOcean 服务器上项目的最新版本,删除了所有迁移文件,再次迁移,但仍然出现此错误:
relation "documents_app_generalcomplaintdocument" does not exist
LINE 1: INSERT INTO "documents_app_generalcomplaintdocument"
模型.py:
class Document(models.Model):
created_date = models.DateTimeField(default=timezone.now)
added_by = CurrentUserField()
class GeneralComplaintDocument(Document):
complaint_reason = models.CharField(max_length=500)
result = models.CharField(max_length=500)
def __str__(self):
return self.complaint_reason
PS:在本地服务器上一切正常。
解决方案
我建议这样做:首先删除您的应用程序(documents_app
)中的所有迁移文件,然后在您的数据库中执行以下 SQL 查询。在这里,我们假设您的 app_name 是documents_app
.
delete FROM "django_migrations" WHERE "app" = 'documents_app';
然后迁移,
python manage.py makemigrations documents_app
python manage.py migrate documents_app
推荐阅读
- c# - 用于创建通讯组列表的 Outlook 加载项(实时和桌面)
- javascript - 从动态生成的下拉菜单中删除一个选项
- python - Pandas 从列中获取唯一值,并且仅有效地获取最新日期
- obfuscar - asp.net core 3.1 的混淆器
- python-3.x - 调用位于另一个类的方法中的变量(Tkinter)
- java - 一遍又一遍地调用read方法时,FileInputStream类是如何知道偏移量的呢?
- php - 从cron执行的php脚本表现得很奇怪
- datetime - 是否有从不同日期选择一组小时的功能?
- sql - 仅存储 1 个值并删除其余的 bigquery 中相同的重复值
- widget - 如何保持显示最新以监控 tk 小部件的选项值