Skip to main content
 首页 » 编程设计

python之Django 休息框架 : How to pass extra argument to django serializer

2025年05月04日10三少

我在 View 中有一个名为 email 的变量。

我想在 ManageSerializer 中访问它。

我怎样才能在序列化器中传递这个参数并到达那里?

views.py

email = 'xyz@gmail.com'  
interviewData = Manage.objects. 
    filter(catcher_id = userCheck['id'], acceptation = '1'). 
    filter(invitation_date__gte = dateToday)[:5]; 
serializer = ManageSerializers(interviewData, many = True) 

请您参考如下方法:

也许将其作为 kwargs 传递:

 ManageSerializers(interviewData, many = True, email= email) 

您可以在序列化器的初始化中访问它,使用类似:kwargs.pop('email')

或

您可以像这样将上下文传递给序列化程序。

 ManageSerializers(interviewData, many = True, context={'email': email}) 

并且您可以像 self.context['email']

一样访问 Serializer 中的上下文