You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django扩展用户模型调用方法后更改无法保存到数据库

Django扩展用户模型调用方法后更改无法保存到数据库

嘿,我仔细瞅了你的代码,问题出在一个超容易忽略的小细节上!

你定义access字段的时候写成了:

access = models.BooleanField

这里少了关键的一对括号(),正确的写法应该是:

access = models.BooleanField(default=False)

不带括号的话,你其实是把BooleanField这个类本身赋值给了access属性,而不是创建这个字段的实例——这就导致数据库里根本没正确生成这个字段,自然不管你怎么调用access_update方法,都没法把更改永久保存下来。

接下来按这几步修复就行:

  • 把字段定义改成带括号的形式(建议加上default参数,避免初始化时出现无默认值的问题)
  • 运行python manage.py makemigrations生成迁移文件
  • 再运行python manage.py migrate把更改同步到数据库

之后你再去shell里测试调用access_update(True),下次打开shell查看的时候,更改应该就能永久保存啦!

备注:内容来源于stack exchange,提问作者Dano_R

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.20 12:14:30