0

我有以下代码来更新一些记录:

Product.objects.filter(id=4).update(feature={'top_selling':False})

当我尝试上面的代码时,出现下一个错误:

ValueError:值必须是一个列表

4

2 回答 2

0

filter(id=4)绝对没问题。

我从您的评论中看到featureProduct 模型上的字段是一个ArrayModelField(我认为它来自这个包?),看起来它接受一个模型列表。

您当前正在尝试将字典分配{'top_selling':False}为该字段的值,当它应该是类似的东西时[feature_instance_1, feature_instance_2],或类似的东西。

那有意义吗?

你想做什么?有top_selling一个字段Feature吗?

于 2018-10-05T10:36:26.187 回答
-2

你应该试试

Product.objects.filter(id=4).update(feature=[{'top_selling':False}])

或将 id 作为列表。

Product.objects.filter(id=[4]).update(feature={'top_selling':False})
于 2018-10-05T06:25:43.843 回答