Django Tastypie多次引用同一ForeignKey模型

Django Tastypie多次引用同一ForeignKey模型,django,tastypie,Django,Tastypie,有没有办法在Tastype中多次引用同一ForeignKey模型/资源 假设模型: class Case(models.Model): name = models.CharField(max_length=10) class Interaction(models.Model): case = models.ForeignKey(Case, related_name="interaction_cases") type = models.CharField(max_leng

有没有办法在Tastype中多次引用同一ForeignKey模型/资源

假设模型:

class Case(models.Model):
    name = models.CharField(max_length=10)

class Interaction(models.Model):
    case = models.ForeignKey(Case, related_name="interaction_cases")
    type = models.CharField(max_length=2, choices=TYPE_CHOICES)
假设tastype资源:

class CaseResource(ModelResource):
    type_one_interactions = fields.ManyToManyField('TypeOneInteractionFullResource', 'interaction_cases', null=True, full_list=True, full=True)
    type_two_interactions = fields.ManyToManyField('TypeTwoInteractionFullResource', 'interaction_cases', null=True, full_list=True, full=True)

    class Meta:
        queryset = Case.objects.all()

class TypeOneInteractionResource(ModelResource):
    case = fields.ForeignKey(Case,'case')

    class Meta:
        queryset = Interaction.objects.all()

    def get_object_list(self, request):
        return super(TypeOneInteractionResource, self).get_object_list(request).filter(type='A')

class TypeTwoInteractionResource(ModelResource):
    case = fields.ForeignKey(Case,'case')

    class Meta:
        queryset = Interaction.objects.all()

    def get_object_list(self, request):
        return super(TypeTwoInteractionResource, self).get_object_list(request).filter(type='B')
基本上,我正在尝试创建一个单一资源,其中包含两个反向资源,用于使用不同数据的同一模型。当我访问CaseResource时,我在结果中看到TypeOneInteractionResource和TypeTwoInteractionResource,但是数据没有被正确过滤


我认为这与“相关名称”相同以及TastyPie内部建模的方式有关。有人成功地做到了这一点吗?甚至可能吗?

原因是,在对
ToManyField
进行脱水以获取相关资源时,根本不调用
获取对象列表
(请参阅)

相反,您希望使用
案例资源
上的
脱水类型一次交互
脱水类型二次交互
方法


另一方面,您可以在
案例
模型上提供属性,这些属性将返回所需的查询集,并将这些属性用于许多域中的属性名称。

谢谢您的提示。最后一句话让我环顾四周,发现:这解决了我的问题。