选择与代理模型相关的';t不适用于Django 1.4.22

选择与代理模型相关的';t不适用于Django 1.4.22,django,django-models,proxy-classes,django-select-related,Django,Django Models,Proxy Classes,Django Select Related,我有一个这样的模型结构: 附录1.1模型 附录2.1模型 FunkyClassLoadoerMixin只是一个以稍微不同的方式帮助加载子类的类,但它不会影响子类的行为 鉴于此,我有一个如下查询: q = SuperStatic.objects.all().select_related('user__app') (在这种情况下,应用程序对象的类型应为app2.models.app) 当它被评估时,我得到这个错误: local/lib/python2.7/site-packages/django/

我有一个这样的模型结构:

附录1.1模型 附录2.1模型 FunkyClassLoadoerMixin只是一个以稍微不同的方式帮助加载子类的类,但它不会影响子类的行为

鉴于此,我有一个如下查询:

q = SuperStatic.objects.all().select_related('user__app')
(在这种情况下,应用程序对象的类型应为app2.models.app)

当它被评估时,我得到这个错误:

local/lib/python2.7/site-packages/django/db/models/query.pyc in get_cached_row(row, index_start, using, klass_info, offset)
   1435                 for rel_field, rel_model in rel_obj._meta.get_fields_with_model():
   1436                     if rel_model is not None:
-> 1437                         setattr(rel_obj, rel_field.attname, getattr(obj, rel_field.attname))
   1438                         # populate the field cache for any related object
   1439                         # that has already been retrieved

AttributeError: 'User' object has no attribute 'date_added'
我真的不知道为什么会发生这种情况。我查看了Django源代码,原因似乎是此函数:

rel_obj._meta.get_fields_with_model()
当一个模型是一个子类而忽略它是一个代理模型的事实时,它的行为是不同的

我找到了一些相关的帖子:

但也没什么帮助


关于如何使用代理类并避免此错误,您有什么想法吗?

AttributeError提到的是用户模型,而不是应用模型。您是否在没有app2.modles.App的情况下测试了它,我是说直接使用app1.models?它有用吗?。另外,这家伙说了一些关于在子类化和使用代理时注入字段的事情AttributeError提到的是用户模型,而不是应用程序模型。您是否在没有app2.modles.App的情况下测试了它,我是说直接使用app1.models?它有用吗?。另外,这家伙说了一些关于在子类化和使用代理时注入字段的事情
local/lib/python2.7/site-packages/django/db/models/query.pyc in get_cached_row(row, index_start, using, klass_info, offset)
   1435                 for rel_field, rel_model in rel_obj._meta.get_fields_with_model():
   1436                     if rel_model is not None:
-> 1437                         setattr(rel_obj, rel_field.attname, getattr(obj, rel_field.attname))
   1438                         # populate the field cache for any related object
   1439                         # that has already been retrieved

AttributeError: 'User' object has no attribute 'date_added'
rel_obj._meta.get_fields_with_model()