Opened 16 years ago

Closed 16 years ago

#6177 closed (fixed)

Only managers have a none() method (not Querysets)

Reported by: Gary Wilson Owned by: nobody
Component: Database layer (models, ORM) Version: dev
Severity: Keywords: qs-rf-fixed
Cc: Triage Stage: Fixed on a branch
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

For compatibility with QuerySet.

>>> User.objects.all().values().none()
Traceback (most recent call last):
  File "<console>", line 1, in ?
AttributeError: 'ValuesQuerySet' object has no attribute 'none'

Change History (6)

comment:1 by Thomas Güttler, 16 years ago

Triage Stage: UnreviewedAccepted

comment:2 by Malcolm Tredinnick, 16 years ago

Triage Stage: AcceptedDesign decision needed

Querysets don't have a none() method. Only managers do.

Why is this needed on Querysets ("consistency" isn't an answer, since it's already consistent.. what's the actual use-case)?

comment:3 by Malcolm Tredinnick, 16 years ago

Summary: ValuesQuerySet should have a none() methodOnly managers have a none() method (not Querysets)
Triage Stage: Design decision neededAccepted

So it looks like this is some massive oversight in [4934], since it's documented as being intended to be a queryset method. Changing the title to reflect the real problem report. It's pretty easy to fix on qs-rf.

comment:4 by Malcolm Tredinnick, 16 years ago

(In [7232]) queryset-refactor: Made none() a method on Querysets, as the documentation
indicates (it was only added to managers in [4394]. Refs #6177.

comment:5 by Malcolm Tredinnick, 16 years ago

Keywords: qs-rf-fixed added
Triage Stage: AcceptedFixed on a branch

comment:6 by Malcolm Tredinnick, 16 years ago

Resolution: fixed
Status: newclosed

(In [7477]) Merged the queryset-refactor branch into trunk.

This is a big internal change, but mostly backwards compatible with existing
code. Also adds a couple of new features.

Fixed #245, #1050, #1656, #1801, #2076, #2091, #2150, #2253, #2306, #2400, #2430, #2482, #2496, #2676, #2737, #2874, #2902, #2939, #3037, #3141, #3288, #3440, #3592, #3739, #4088, #4260, #4289, #4306, #4358, #4464, #4510, #4858, #5012, #5020, #5261, #5295, #5321, #5324, #5325, #5555, #5707, #5796, #5817, #5987, #6018, #6074, #6088, #6154, #6177, #6180, #6203, #6658

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