作者:香柏林茶业 | 来源:互联网 | 2023-08-28 10:30
情况是这样的,不知什么原因,突然就取不到模型的某个字段了,报错没有这个属性。将服务停下,重新运行,结果在命令行里我看到,生成了新的模型变更文件,把我刚才取不到的字段删除了,可是模型的字段
情况是这样的,不知什么原因,突然就取不到模型的某个字段了,报错没有这个属性。
将服务停下,重新运行,结果在命令行里我看到,生成了新的模型变更文件,把我刚才取不到的字段删除了,可是模型的字段在代码上我是没动过的,这也太扯淡了,我把字段重名,可以生成,改回来,就把字段删除了,但是生成不了我原来命名的字段了。
感觉就像突然间,这个字段读取不到了,模型变更的命令无法去执行。
出问题是外键ForeignKey字段,数据库是sqlite3.有没有人遇到类似的情况,应该如何解决?
我个人猜测是related_name的原因,我说下我对这个的理解:related_name是用来反向查询的,这个是不是必须要写?我有些模型外键没写related_name,好像也没出问题,另外这个名称必须在全局里面是唯一的。
我记得就是我在一个模型里面添加了一个外键字段,中间有点断续(去做其它事情了),然后就出现现在这个问题了,而且我添加的字段,外键对到的模型和出问题的模型也不是一个,隐约觉得有这样的原因。
总之这个问题很坑啊,莫名其妙的把我一个字段删除了,不要用重命名的解决方案。怎么才能恢复?有类似情况的指导下,感谢。