【发布时间】:2019-11-02 09:04:25
【问题描述】:
我想在部门模型的员工模型序列化器中序列化“部门名称”(dept_name) 以及部门 ID(id)
在员工序列化程序中,我想对“部门名称”和“部门 ID”模型进行序列化。我在 Employee Serializer 的 Meta 类中也提到了部门模型
型号
class Department(models.Model):
dept_name = models.CharField(max_length=10)
class Employee(models.Model):
emp_name = models.CharField(max_length=15)
email = models.EmailField(unique=True)
password = models.CharField(max_length=14)
designation = models.CharField(max_length=20)
dept_id = models.ForeignKey(Department, on_delete=models.SET_NULL, null=True, blank=True)
class Meta:
ordering = ('id',)
def __str__(self):
return self.emp_name
序列化器
class DepartmentSerializer(serializers.ModelSerializer):
class Meta:
model = Department
fields = [
'id',
'dept_name',
]
class EmployeeSerializer(serializers.ModelSerializer):
dept_id = serializers.SlugRelatedField(queryset=Department.objects.all(), slug_field='dept_name')
deptname = DepartmentSerializer()
class Meta:
model = Employee,Department
fields = [
'id',
'emp_name',
'email',
'password',
'designation',
'dept_id',
'deptname',
]
【问题讨论】:
标签: django django-models django-rest-framework django-serializer