﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
36085	SQLite backend raises exception on negative array indices in JSONField	savanto	savanto	"Positive jsonfield array index queries can be constructed the usual way with kwargs (ie. `Model.objects.filter(jsonfield__2=1)`), while negative jsonfield array index query must be constructed using the splat operator on a dict: `Model.objects.filter(**{""jsonfield__-2"": 1})`). When querying jsonfields in this way **on the SQLite backend**, the following error arises:

{{{django.db.utils.OperationalError: bad JSON path: '$[-2]'}}}

When constructing the query, the JSON path constructor simply appends any numerical value to the path (https://github.com/django/django/blob/5.1.4/django/db/models/fields/json.py#L155). But the SQLite backend uses a special syntax for performing negative-indexing in jsonfields (https://sqlite.org/json1.html#path_arguments) that is different from other backends: negative indices must be prepended by a literal `#` character."	Bug	closed	Database layer (models, ORM)	5.1	Normal	fixed	sqlite, jsonfield	Sage Abdullah	Ready for checkin	1	0	0	0	0	0
