gpt4 book ai didi

python - 忽略 Django 模型中的一个字段

转载 作者:行者123 更新时间:2023-12-04 13:02:06 24 4
gpt4 key购买 nike

我有一个具有以下四个字段的 Django 模型:

class File:
id = models.PrimaryKey()
name = models.CharField()
is_active = models.BooleanField()
data = models.JSONField()
data字段很大,每个条目可能有 5MB。有没有办法在执行 ORM 查询时隐藏该字段,而不必每次都指定要查看的所有字段?就像是:
File.objects.all() # exclude data field
File.objects.values('id', 'data') # include the data field

最佳答案

在某些复杂的数据建模情况下,您的模型可能包含大量字段,其中一些字段可能包含大量数据(例如,文本字段),或者需要进行昂贵的处理才能将它们转换为 Python 对象。如果您在最初获取数据时不知道是否需要这些特定字段的情况下使用查询集的结果,您可以告诉 Django 不要从数据库中检索它们。

这是通过将不加载的字段名称传递给 defer() 来完成的。 :

Entry.objects.defer("headline", "body")

还要提到的是,无论何时您调用 only()它替换要立即加载的字段集。该方法的名称是助记符:只有那些字段会立即加载;其余的被推迟。

关于python - 忽略 Django 模型中的一个字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53937777/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com