问题描述
我需要批量更新一些数据集。但是应该根据已经存在的现有值计算一个字段。为简单起见,我使用字段 IN_updated_at
来更新数据库中已存在的相同值。即F('IN_updated_at')
from django.db.models import F
for i in some_list:
sync_list.append(
{
'id':'some_id','last_synced_time': Now(),'IN_updated_at': F('IN_updated_at')
}
)
MyModel.objects.bulk_update([MyModel(**kv) for kv in sync_list],['last_synced_time','IN_updated_at'])
但我收到以下错误:
TypeError: 预期的字符串或类似字节的对象
我对 JSON 字段也做了同样的事情,但出现以下错误:
TypeError: 'F' 类型的对象不是 JSON 可序列化的
我怎样才能得到这份工作?
注意:我按照 this answer 使用它,但在 bulk_upsert 中使用。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)