You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Code self.to_match = re.escape(self.to_match)
I also found a solution in #620. This is a more simple way!
If you are using the older version (not master) of 1.3.6, you can modify operators.py as #620.
One line description of the issue
__contains in filter does not support parenthesis and gives empty queryset as a result
Example, i need to get this object
{
"channel": '["Admin (role)"]'
}
Python script
models.py
`from djongo import models
import jsonfield
class word(models.Model):
channel = jsonfield.JSONField()`
views.py
queryset = word.objects.filter(channel__contains="Admin (role)")
It translates the query as the following
filter: { channel: { '$regex': '^.*"Admin (role)".*$' } }
But we need the translated query
filter: { channel: { '$regex': '^.*"Admin \\(role\\)".*$' } }
Also tried
word.objects.filter(channel__contains="Admin \\(role\\)")
but it is not workingEnv
Django==2.2.24
django-jsonfield==1.4.1
djangorestframework==3.11.0
djongo==1.3.6
dnspython==2.3.0
pymongo==3.12.1
pytz==2022.7.1
six==1.16.0
sqlparse==0.2.4
The text was updated successfully, but these errors were encountered: