diff --git a/backend/shop/views.py b/backend/shop/views.py index a8767e3..f4d4dfb 100644 --- a/backend/shop/views.py +++ b/backend/shop/views.py @@ -1152,20 +1152,16 @@ def wechat_login(request): signer = TimestampSigner() token = signer.sign(user.openid) - return Response({ + # Use serializer to ensure all fields (including is_star, is_admin, etc.) are included + serializer = WeChatUserSerializer(user) + data = serializer.data + data.update({ 'token': token, - 'id': user.id, - 'openid': user.openid, 'is_new': created, - 'nickname': user.nickname, - 'avatar_url': user.avatar_url, - 'phone_number': user.phone_number, - 'gender': user.gender, - 'province': user.province, - 'city': user.city, - 'country': user.country }) + return Response(data) + @extend_schema( summary="更新微信用户信息", request=WeChatUserSerializer, @@ -1250,15 +1246,15 @@ def phone_login(request): signer = TimestampSigner() token = signer.sign(user.openid) - return Response({ + # Use serializer to ensure all fields are included + serializer = WeChatUserSerializer(user) + data = serializer.data + data.update({ 'token': token, - 'id': user.id, - 'openid': user.openid, - 'nickname': user.nickname, - 'avatar_url': user.avatar_url, - 'phone_number': user.phone_number, - 'is_new': created + 'is_new': created, }) + + return Response(data) @extend_schema(