Opened 7 months ago
Last modified 7 months ago
#35426 closed Bug
`GenericPrefetch` should have `queryset` parameter as required — at Initial Version
Reported by: | Sobolev Nikita | Owned by: | Sobolev Nikita |
---|---|---|---|
Component: | contrib.contenttypes | Version: | 5.0 |
Severity: | Release blocker | Keywords: | |
Cc: | Sobolev Nikita | Triage Stage: | Ready for checkin |
Has patch: | yes | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | yes | UI/UX: | no |
Description
Original issue: https://code.djangoproject.com/ticket/33651
Right now this code is really strange. It produces this result:
`
import django
from django.contrib.contenttypes.prefetch import GenericPrefetch
GenericPrefetch('a')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/sobolev/Documents/github/wemake-django-template/.venv/lib/python3.11/site-packages/django/contrib/contenttypes/prefetch.py", line 7, in init
for queryset in querysets:
TypeError: 'NoneType' object is not iterable
`
I guess that there are two ways:
- Using
if querysets is None: querysets = []
- Requiring this argument, which I guess is the correct thing to do. Why would we ever want this field to be empty?
I will send a PR with the fix.
I found this while working on https://github.com/typeddjango/django-stubs/pull/2115