0
在Django中,我有以下模型。Django REST框架:通過多個關係序列化
class Genus(models.Model):
genus_name=models.CharField(max_length=30)
...
class HostSpecies(models.Model):
species_genus=models.ForeignKey(Genus)
...
class HostStrain(models.Model):
strain_species=models.ForeignKey(HostSpecies)
strain_name=models.CharField(max_length=50)
...
現在我試圖使用Django REST框架序列化HostStrain模型如下。
class HostStrainSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = HostStrain
fields = ('strain_species__species_genus','strain_species','strain_name')
但在Django標準雙下劃線符號似乎並不在這裏工作,因爲我得到的錯誤:
Field name
strain_species__species_genus
is not valid for modelHostStrain
.
我想包括一個鏈接到(或至少我的HostStrain序列化中的Genus
模型的__unicode__
。
那麼,如何在Django REST框架的序列化中遵循多級關係?
第二種方法基本上就是我之後,只是完全錯過在文檔的'source'參數。謝謝! –