我想创建一个雇员对象,其属性包括预先存在的外键(部门)。当我看到雇员api ..我正在获取部门ID而不是部门名称....请帮助models.pyclass Department(models.Model):name = models.CharField(max_length= 20)def __str__(self): return self.nameclass Employee(models.Model):employee_name = models.CharField(max_length= 20)surname = models.CharField(max_length= 20)address = models.CharField(max_length = 50)qualification = models.CharField(max_length = 30)contact_num = PhoneNumberField()department = models.ForeignKey(Department, on_delete=models.PROTECT)def __str__(self): return self.employee_name序列化class DepartmentSerializer(serializers.ModelSerializer):""" Serializer to represent the Chain model """ class Meta: model = Department fields = '__all__'class EmployeeSerializer(serializers.ModelSerializer): """ Serializer to represent the Chain model """ class Meta: model = Employee fields = '__all__'
1 回答
眼眸繁星
TA贡献1873条经验 获得超9个赞
您可以使用StringRelatedField()相同的。
class EmployeeSerializer(serializers.ModelSerializer):
""" Serializer to represent the Chain model """
department = serializers.StringRelatedField()
class Meta:
model = Employee
fields = '__all__'
StringRelatedField可以用来表示关系的目标(使用__unicode__或__str__方法)。
如果您希望查看与该FK相关的所有详细信息,请depth按以下方式使用
class EmployeeSerializer(serializers.ModelSerializer):
""" Serializer to represent the Chain model """
class Meta:
model = Employee
fields = '__all__'
depth = 1
添加回答
举报
0/150
提交
取消