python – django.db.utils.OperationalError:my_table没有列ID
发布时间:2020-12-16 21:28:36 所属栏目:Python 来源:网络整理
导读:我正在测试我的Django应用程序的models.py文件:我的 Python interepreter中的“myapp”,但是仍然遇到这个错误: django.db.utils.OperationalError: table myapp_table1 has no column named attribute1_id 我的models.py,table1和表2中有2个表. class tabl
我正在测试我的Django应用程序的models.py文件:我的
Python interepreter中的“myapp”,但是仍然遇到这个错误:
django.db.utils.OperationalError: table myapp_table1 has no column named attribute1_id 我的models.py,table1和表2中有2个表. class table1 (models.Model): name = models.CharField(max_length=25) def __str__(self): return self.name class table2 (models.Model): name = models.CharField(max_length =25) attribute1= models.ForeignKey(Type,related_name = "att1_set+",default=None) attribute2= models.ManyToManyField(Type,related_name = "att2_set+",default=None) def __str__(self): return self.metric_name 在我的python解释器中: >>> from my_app.models import table1,table2 >>> t1 = table1 (name = "ty1",id = 0) >>> t1.save() >>> t2 = table1 (name = "ty2",id = 1) >>> e1 = table2 (name = "as",attribute1 = t1) >>> e1.save() >>> error aforementioned after .save 但是,当我执行:“manage.py sql myapp”时,我看到我的table2: CREATE TABLE "my_app_table2" ( "id" integer NOT NULL PRIMARY KEY AUTOINCREMENT,"name" varchar(25) NOT NULL,"attribute1_id" integer NOT NULL REFERENCES "myapp_table1" ("id") ) 解决方法
您必须运行python manage.py syncdb(如果您使用south,则运行python manage.py migrate – 您应该这样做),以便将更改应用于数据库.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |