我正在使用Django 1.11,在我的一个模型中,我在保存模型时添加了动作。
但是,当只保存模型的一部分时,我不希望这些操作完成。
我知道update_fields=('some_field',)
可用于指定必须保存的字段。
但是,当使用方法only() or defer()
在数据库中提取对象时,我没有看到有关save()
方法中更新的字段的任何信息,update_fields
为空。< / p>
因此我的问题是:当只提取了一些字段时,如何获取Django保存的字段?
答案 0 :(得分:1)
使用defer
或only
加载实例时,get_deferred_fields()
方法会返回尚未加载的字段名称列表;你应该可以用它来计算出哪些会被保存。