Zgodnie z dokumentacją Django JSONField wyjaśnia, że data
struktura odpowiada natywnemu formatowi Pythona, z nieco innym podejściem podczas wykonywania zapytań.
Jeśli znasz strukturę JSON, możesz również filtrować klucze tak, jakby były polami powiązanymi:
object.filter(data__animal='cat')
object.filter(data__name='tom')
Dostęp do tablicy:
object.filter(data__0__animal='cat')
Twój przykład zawiera prawie poprawny, ale Twoje dane znajdują się na liście i wymaga:
object.filter(data__contains=[{'animal': 'cat'}])