为什么Django中的save不工作?

0 投票
1 回答
4147 浏览
提问于 2025-04-16 07:07

我在使用 manage.py shell,然后运行了类似这样的代码:

d=Document.objects.get(pk=1)
d.scores  
{1:0,2:0,3:0}  
d.scores[1]=5
d.scores
{1:5,2:0,3:0} 
d.save()

但是查看数据库中的 d 时发现它并没有更新。我到底哪里做错了呢??我查看了这里的内容,但 d 确实是一个 Document 实例。

如果有帮助的话,models.py 看起来是这样的:

from django.db import models

class Document(models.Model):
    fileName=models.CharField(max_length=200)    
    fileUrl=models.CharField(max_length=200) 
    scores={1:0,2:0,3:0}  

1 个回答

6

你的'scores'类变量并不是Django中任何一个字段类的实例。我想'scores'这个字段在数据库的表里可能都不存在,因为字段类就是用来定义这些内容的,它们决定了什么会被保存到数据库里,还有其他一些功能。

撰写回答