我是Python新手,並在Django中使用rest框架和使用mysql數據庫構建API。 我使用過濾器查詢來獲取用戶信息對象,但它的返回數組。從Django查詢返回對象
在登錄API我的代碼是:
is_valid_user = users.objects.filter(email=req_email, password=req_password)
serializer = usersSerializer(is_valid_user,many=True)
if is_valid_user:
response = {
'message': 'success',
'code': 1,
'data':serializer.data
else:
response = {
'message': 'User not found',
'code': 0,
}
return Response(response)
我usersSerializer類:
class usersSerializer(serializers.ModelSerializer):
class Meta:
model = users
fields = ('uid', 'first_name', 'last_name', 'email', 'gender')
對於這個代碼的迴應是:
{
"message": "success",
"code": 1,
"data": [
{
"uid": 6,
"first_name": "anuj",
"last_name": "sharma",
"email": "[email protected]",
"gender": "0"
}
]
}
但是爲此我不想排列data
。 預期結果應該是:
{
"message": "success",
"code": 1,
"data": {
"uid": 6,
"first_name": "anuj",
"last_name": "sharma",
"email": "[email protected]",
"gender": "0"
}
}
請幫助我。
你避免一切Django的休息框架通過這樣做給你。如果你使用了一個序列化器,你可以很容易地得到你想要的結果。 –
@DanielRoseman感謝您的建議。我將閱讀其餘的框架文檔。 –
'isValidUser.values('uid','first_name','last_name','email','gender')[0]' – itzMEonTV