无法从django中的泛型类型中检索对象

时间:2013-07-28 21:02:35

标签: django django-models django-contenttypes

我试图像这样检索一个通用对象:

generic_type = ContentType.objects.get(app_label="customers", model="Customer")
print generic_type.id 
print 'customer: '+str(customer.id)
setting = generic_type.get_object_for_this_type(object_id=customer.id)

两个print语句都会吐出存储在我数据库中的正确值。

我正在按照此处文档中的检索进行检索:https://docs.djangoproject.com/en/dev/ref/contrib/contenttypes/#django.contrib.contenttypes.models.ContentType

我正在运行django 1.4.3

我的检索方法有什么问题吗?

1 个答案:

答案 0 :(得分:0)

可以通过以下方式完成:

generic_type = ContentType.objects.get_for_model(customer)
setting = Preference.objects.filter(content_type__pk=generic_type.id, object_id=customer.id)