Opened 7 years ago

Closed 7 years ago

#28590 closed Bug (duplicate)

Quotes around filter string omitted in query __str__()

Reported by: Aur Saraf Owned by: Adiyat Mubarak
Component: Database layer (models, ORM) Version: 1.11
Severity: Normal Keywords:
Cc: Triage Stage: Unreviewed
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

Very low severity, and probably easy pickings:

In various versions of Django, up to 1.11.5, with sqlite, on Windows:

class M(models.Model):
    field = models.CharField(max_length=10)
>>> from bug import models
>>> print models.M.objects.filter(field='I am a string, look at me').query.__str__()
SELECT "bug_m"."id", "bug_m"."field" FROM "bug_m" WHERE "bug_m"."field" = I am a string, look at me
>>> models.M.objects.filter(field='I am a string, look at me')
<QuerySet []>
>>> from django.db import connection
>>> print connection.queries[-1]['sql']
SELECT "bug_m"."id", "bug_m"."field" FROM "bug_m" WHERE "bug_m"."field" = 'I am a string, look at me' LIMIT 21
SELECT "bug_m"."id", "bug_m"."field" FROM "bug_m" WHERE "bug_m"."field" = I am a string, look at me
SELECT "bug_m"."id", "bug_m"."field" FROM "bug_m" WHERE "bug_m"."field" = 'I am a string, look at me' LIMIT 21
WHERE "bug_m"."field" = I am a string, look at me
WHERE "bug_m"."field" = 'I am a string, look at me'

Change History (3)

comment:1 by Adiyat Mubarak, 7 years ago

Owner: changed from nobody to Adiyat Mubarak
Status: newassigned

in reply to:  description comment:2 by Adiyat Mubarak, 7 years ago

Replying to Aur Saraf:

Very low severity, and probably easy pickings:

In various versions of Django, up to 1.11.5, with sqlite, on Windows:

class M(models.Model):
    field = models.CharField(max_length=10)
>>> from bug import models
>>> print models.M.objects.filter(field='I am a string, look at me').query.__str__()
SELECT "bug_m"."id", "bug_m"."field" FROM "bug_m" WHERE "bug_m"."field" = I am a string, look at me
>>> models.M.objects.filter(field='I am a string, look at me')
<QuerySet []>
>>> from django.db import connection
>>> print connection.queries[-1]['sql']
SELECT "bug_m"."id", "bug_m"."field" FROM "bug_m" WHERE "bug_m"."field" = 'I am a string, look at me' LIMIT 21
SELECT "bug_m"."id", "bug_m"."field" FROM "bug_m" WHERE "bug_m"."field" = I am a string, look at me
SELECT "bug_m"."id", "bug_m"."field" FROM "bug_m" WHERE "bug_m"."field" = 'I am a string, look at me' LIMIT 21
WHERE "bug_m"."field" = I am a string, look at me
WHERE "bug_m"."field" = 'I am a string, look at me'

Hi, this issue also occurs in my OSX and I'm using Django 1.9.6 with MariaDB.
I'm trying to patch this, should I start from 1.11.x branch or master? Also, I don't know where is the file located regarding this issue.
Thanks in advanced.

Version 0, edited 7 years ago by Adiyat Mubarak (next)

comment:3 by Tim Graham, 7 years ago

Resolution: duplicate
Status: assignedclosed

Duplicate of #25705.

Note: See TracTickets for help on using tickets.
Back to Top