我在DRF中有一个序列化器,如下所示:
class UserRegistrationSerializer(serializers.ModelSerializer):
full_name = serializers.CharField(max_length=200)
email_id = serializers.EmailField()
jira_ticket = serializers.ReadOnlyField()
class Meta:
model = User
fields = ['full_name', 'email_id', 'jira_ticket']
class UserViewSet(viewsets.ViewSet):
def create(self, request):
serializer = UserRegistrationSerializer(data=request.data)
if serializer.is_valid():
user_obj= UserWorkFlow(request_data=request.data,
serializer=serializer)
response = user_obj.response()
return response
else:
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
很明显,这是一个在系统上创建新用户的序列化程序,它在请求有效负载中需要用户的全名和 email_id 新用户。作为用户创建的一部分,分别创建了 jira_ticket 。
但是,Jira票证数据仅在 View 中可用,而在 Serializer 中不可用。如何从视图中捕获此数据并更新序列化程序,因此该响应具有 jira_ticket 信息吗?