我需要你帮我处理一些奇怪的事。
我有以下几种型号:
class Profile(models.Model):
first_name = models.CharField(max_length=20, default="")
last_name = models.CharField(max_length=20, default="")
email = models.EmailField(max_length=50, unique=True, default="")
image = models.ImageField(null=True, blank=True, upload_to=profile_image_upload_path)
class Skill(models.Model):
profiles = models.ManyToManyField(Profile, blank=True)
name = models.CharField(max_length=30)
image = models.ImageField(upload_to=skill_image_upload_path)
is_tech_skill = models.BooleanField(default=True)和下列序列化程序:
class SkillSerializer(serializers.ModelSerializer):
profiles = serializers.PrimaryKeyRelatedField(queryset=Profile.objects.all(), many=True)
class Meta:
model=Skill
fields=['name', 'image', 'is_tech_skill', 'expertise']
class ProfileSerializer(serializers.ModelSerializer):
skill_list = SkillSerializer(read_only=True, many=True,)
class Meta:
model = Profile
fields = ('first_name', 'last_name', 'email', 'image', 'skill_list')
depth = 2当我收到对配置文件的请求时,我看不到任何技能:
我从django管理面板中为这个概要添加了两个技巧。
提前谢谢!
发布于 2020-11-08 20:48:15
在您的序列化程序中没有“配置文件”。1.在您将另一个字段命名为“配置文件”之后,将您的ManyToMany命名为profiles,并且没有在任何地方使用它。我认为您需要将它添加到您的related_name字段中--在序列化程序3中的。
https://stackoverflow.com/questions/64741888
复制相似问题