python - Django:选择 JsonField 作为 new_name?

标签 python django

我有一个表,其中一些属性是列,一些属性是作为 postgres JsonField 实现的。

对于专栏,我可以写例如

Product.objects.values(brand=F('brand_name'))

用于实现 SELECT Brand_name AS Brand 查询。

我需要对 JsonField 执行类似的操作,例如

Product.objects.values(color=F('jsonproperties__color'))

但是,F 表达式 do not work correctly使用 JsonFields,并且似乎不会很快出现修复。

我该如何解决这个问题?

最佳答案

也许一个简单的列表理解就可以满足您的要求:

[{"color": p["jsonproperties"]["color"]} for p in Product.objects.values("color")]

关于python - Django:选择 JsonField 作为 new_name?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57135642/

相关文章:

Firefox 上的 JavaScript MIME 类型警告

python - 对 Tastypie 的 POST 请求返回一个非 SSL Location Header

python - 如何查找所有 Python 内置私有(private)变量,如 __file__、__name__

python - 在python中将变量(字母和数字)组合成一个问题

python - 在 Django 中过滤

javascript - django:如何将模板变量传递给 javascript onclick 例程?

python - DateField 'str' 对象没有属性 'year'

javascript - 使用 Selenium 和 BeautifulSoup 抓取网站

python - 正则表达式从函数中提取表达式?

python - 如何将zlib数据插入Mongo? (统一码问题)