3
我有三个型号:Django的序列化与定制很多型号很多映射
class DistinctAlert(models.Model):
entities = models.ManyToManyField(to='Entity', db_index=True, through='EntityToAlertMap')
class Entity(models.Model):
entity_instance = models.ManyToManyField(EntityInstance)
class EntityToAlertMap(models.Model):
entity = models.ForeignKey(Entity, on_delete=models.CASCADE)
distinct_alert = models.ForeignKey(DistinctAlert, on_delete=models.CASCADE)
entity_alert_relationship_label = models.ForeignKey(EntityAlertRelationshipLabel, on_delete=models.CASCADE,
null=True)
无视多余的字段DistinctAlert
和Entity
了,这是我的串行的样子:
class EntitySerializer(serializers.ModelSerializer):
entity_instance = EntityInstanceSerializer(many=True)
class Meta:
model = Entity
fields = ('id', 'entity_instance')
class EntityInstanceSerializer(serializers.ModelSerializer):
entity_type = EntityTypeSerializer()
class Meta:
model = EntityInstance
fields = ('label', 'entity_type')
class DistinctAlertSerializer(serializers.ModelSerializer):
entities = EntitySerializer(many=True)
class Meta:
model = DistinctAlert
#TODO how do I serialize custom mapping?
fields = ('id', 'entities')
我的问题是这样的,我的api将返回给我的只是实体,并且它忽略了entity_alert_relationship
字段,它是我用来将实体映射到多个字段中的不同警报的EntityToAlertMap
的一部分。我的问题是,我怎么能序列化DistinctAlert
同时保持实体/关系领域
看看这个问题:http://stackoverflow.com/questions/17256724/include-intermediary-through-model-in-responses-in-django-rest-framework。接受的答案是你正在寻找的。 – AKS
在上述评论中发布的帖子不帮你找到答案吗? – AKS