django-snowflake
django-snowflake copied to clipboard
JSONField queries with complex JSON parameters don't work
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"}',)))