﻿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
19652	Fix for #19524 introduced a backward compatiblity issue with related managers on 1.5.X	Simon Charette	Simon Charette	"The fix for #19524 which was [https://github.com/django/django/commit/5097d3c5faab2b6582c4cebee2b265fcdbb893eb#L1R698 backported] to the 1.5.X branch caused the following regression:

{{{
#!python
class ObjectQuerySet(models.query.QuerySet):
    def extra_qs_method(self):
        pass


class ObjectManager(models.Manager):
    use_for_related_fields = True

    def get_query_set(self):
        return ObjectQuerySet(self.model, using=self._db)


class RelatedObject(models.Model):
    pass


class Object(models.Model):
    related = models.ForeignKey(RelatedObject, related_name='objs')

    objects = ObjectManager()


RelatedObject().objs.extra_qs_method()
}}}

Raises

{{{
AttributeError: 'EmptyQuerySet' object has no attribute 'extra_qs_method'
}}}

It works perfectly on `master` since `QuerySet.none()` returns an instance of the correct class while setting it's underlying's query to empty and on < 1.5.X since prior to this backport there was no `instance.pk` [https://github.com/django/django/commit/5097d3c5faab2b6582c4cebee2b265fcdbb893eb#L1R695 check] to return an `EmptyQuerySet`."	Bug	closed	Database layer (models, ORM)	1.5-beta-1	Release blocker	fixed	none EmptyQuerySet none		Accepted	1	0	0	0	0	0
