PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

SELEZIONA su JSONField con Django

La risposta è un'espressione RawSQL;

queryset.annotate(value = RawSQL("(jsonfield->%s)", ('key_name',)))
queryset.values('value')

Il primo argomento di RawSQL è come una stringa modello, il secondo argomento riempirà il %s del primo

AGGIORNAMENTO:apparentemente Django 2.1+ ora supporta il mio comportamento previsto originale;

queryset.values('jsonfield__key_name')