Python Django代理模型返回父模型

Python Django代理模型返回父模型,python,django,proxy,Python,Django,Proxy,我对django 1.6.5有一个奇怪的问题 在distribution.models中,我有: 怎么会这样 >>来自distribution.models导入代理1、代理2 >>>类型(Proxy1.objects.first()) >>>类型(Proxy2.objects.first()) 你知道去哪里寻找原因吗?经过长时间的搜寻,我终于找到了罪犯。django money包中的MoneyField在模型管理器上执行了一些黑魔法,它以某种方式破坏了为代理模型返回正确模型类的过程。我提出了一

我对django 1.6.5有一个奇怪的问题

在distribution.models中,我有: 怎么会这样
>>来自distribution.models导入代理1、代理2
>>>类型(Proxy1.objects.first())
>>>类型(Proxy2.objects.first())

你知道去哪里寻找原因吗?

经过长时间的搜寻,我终于找到了罪犯。django money包中的MoneyField在模型管理器上执行了一些黑魔法,它以某种方式破坏了为代理模型返回正确模型类的过程。我提出了一个问题:

我通过手动覆盖代理类上的“objects”属性解决了一个简单的解决方法,如下所示:

class ProxyModel(SomeModelWithMoneyField):

    # This fixes django-money that would else return parent objects
    objects = models.Manager()

    class Meta:
        proxy=True

所有Proxy1和Proxy2对象上的类型是否相同?(不仅仅是
第一个
)?嗯,你试过重新启动shell吗?我很想知道你的对象是如何实例化的。@AamirAdnan是的,刚刚尝试了一个新的shell。。。没有帮助…@DavidW。所有型号在django文件管理器中使用其标准的
\uuuuu init\uuuuu
版本。Titusz thx对于这个问题/答案,您可以节省我的时间;)
>>> from distribution.models import Proxy1, Proxy2
>>> type(Proxy1.objects.first())
<class 'core.models.Book'>
>>> type(Proxy2.objects.first())
<class 'distribution.models.Proxy2'>
class ProxyModel(SomeModelWithMoneyField):

    # This fixes django-money that would else return parent objects
    objects = models.Manager()

    class Meta:
        proxy=True