Due to snowflake-connector-python's lack of VARIANT support (I think it's difficult if not impossible to fix this otherwise), some JSONField queries with complex JSON parameters don't work.
For example, if value is a JSONField, this won't work:
>>> JSONModel.objects.filter(value__k={"l": "m"})
A workaround is:
>>> from django.db.models.expressions import RawSQL
>>> JSONModel.objects.filter(value__k=RawSQL("PARSE_JSON(%s)", ('{"l": "m"}',)))
Due to snowflake-connector-python's lack of VARIANT support (I think it's difficult if not impossible to fix this otherwise), some
JSONField
queries with complex JSON parameters don't work.For example, if
value
is aJSONField
, this won't work:A workaround is: