在django中更新产品组的价格

时间:2016-05-16 10:22:09

标签: django django-models architecture

这个问题涉及django项目架构。 我正在建造小商店,卖家可以上传他们的数字产品。系统正在查询数据库并更新产品参数。我希望系统根据这些参数设置价格,并且可以在django admin中根据这些参数更新不同产品组的价格。每个已知参数的基本价格加额外费用。每个产品都有几个字段,每个字段都可以有不同的值。额外价格基于价值。所以我想它应该是一些模型,比如Prices。我有一个关于如何用词典做到这一点的愿景。硬编码参数:价格项目,循环它们和瞧。你们能建议我如何用django模型解决这个问题?希望我的问题有道理。

1 个答案:

答案 0 :(得分:0)

可能是Django Update查询将帮助你。它像这样工作

ModelName.objects.filter(id__in=[1,2,3,4]).update(value='some_value')

可以找到进一步的文档here 要单独更新每条记录,您将遍历所有过滤的值

records = ModelName.objects.filter(id__in=[1,2,3,4])
for rec in records:
    rec.field_name = field_value
    rec.save()
    # and so on

您还可以使用setattrgetattr来更新此类

for rec in records:
    setattr(rec, 'field_name', 'field_value')
    rec.save()