Django Serializer 如何在序列化程序中遍历字典值和 return
Django Serializer How to loop over dictionary value and return in serializer
我在列表中有以下字典
self.passengers = [{'first_name':'Harry','last_name':'kane'},{'first_name':'cristiano','last_name':'aviero'}
我已将我的序列化器设置如下
class PassengerSerializer(serializers.Serializer):
first_name = serializers.CharField()
last_name = serializers.CharField()
class TicketDetailSerializer(serializers.Serializer):
passenger = PassengerDetailSerializer(many=True)
我已将我的代码设置如下以提取乘客数据
'passenger': [{
'last_name': [passenger['last_name'] for passenger in self.passengers],
'first_name': [passenger['first_name'] for passenger in self.passengers]
}],
但我只得到名字 ->'harry' 和姓氏-> kane 接下来我该怎么做才能得到名字和姓氏的所有字典是 self.passengers?
我得到的输出为:
"passenger": [
{
"lastname": "['kane', 'aviero']",
"firstname": "['harry', 'cristiano']"
}
]
我想要输出为
"passenger": [
{
"lastname": "kane",
"firstname": "harry"
},
{
"lastname": "aviero",
"firstname": "cristiano"
}
]
'passenger': [{
'last_name': passenger['last_name'],
'first_name': passenger['first_name']
} for passenger in self.passengers ]
我在列表中有以下字典
self.passengers = [{'first_name':'Harry','last_name':'kane'},{'first_name':'cristiano','last_name':'aviero'}
我已将我的序列化器设置如下
class PassengerSerializer(serializers.Serializer):
first_name = serializers.CharField()
last_name = serializers.CharField()
class TicketDetailSerializer(serializers.Serializer):
passenger = PassengerDetailSerializer(many=True)
我已将我的代码设置如下以提取乘客数据
'passenger': [{
'last_name': [passenger['last_name'] for passenger in self.passengers],
'first_name': [passenger['first_name'] for passenger in self.passengers]
}],
但我只得到名字 ->'harry' 和姓氏-> kane 接下来我该怎么做才能得到名字和姓氏的所有字典是 self.passengers? 我得到的输出为:
"passenger": [
{
"lastname": "['kane', 'aviero']",
"firstname": "['harry', 'cristiano']"
}
]
我想要输出为
"passenger": [
{
"lastname": "kane",
"firstname": "harry"
},
{
"lastname": "aviero",
"firstname": "cristiano"
}
]
'passenger': [{
'last_name': passenger['last_name'],
'first_name': passenger['first_name']
} for passenger in self.passengers ]