首页 > 解决方案 > 当我尝试执行 django models migrate 命令 - python manage.py migrate 时出现错误。如何解决这个错误?

问题描述

    from django.db import models
    from django.contrib.auth.models import User


    class Student(models.Model):
        rollno = models.CharField(max_length=13)
        name = models.OneToOneField(User, on_delete=models.CASCADE)
        dept = models.CharField(max_length=30)

        def __str__(self):
            return str(self.name)


    class Subject(models.Model):
        subname = models.CharField(max_length=50)
        deptname = models.CharField(max_length=50)

        def __str__(self):
            return str(self.subname)

PS C:\Users\Akhil\Desktop\django\studentportal> python manage.py migrate 要执行的操作:应用所有迁移:admin、auth、contenttypes、sessions、studentapp 运行迁移:应用 studentapp.0003_auto_20210602_0944...Traceback(最近最后调用):文件“C:\Users\Akhil\AppData\Local\Programs\Python\Python38-32\lib\site-packages\django\db\models\fields_init _.py ”,第 1823 行,在 get_prep_value 返回int(value) ValueError: int() 以 10 为底的无效文字:'CSE'

我试图删除我创建的模型。每当我尝试迁移模型时删除后,我都会收到此错误。所以我再次添加了相同的模型主题

标签: pythondjangodjango-modelsdjango-migrations

解决方案


看起来您已将数据库中的字段更改为 anIntegerField并再次更改?如果可以擦除数据库,我建议将其删除,然后迁移,然后重新运行./manage.py makemigrations./manage.py migrate.


推荐阅读