我已经使用Django-rest-auth创建了rest API,在登录时,它会返回密钥和一些用户信息,但是我需要添加一些状态,例如成功和消息等。有什么方法可以覆盖django-rest-auth的视图进行登录吗?
class TokenSerializer(serializers.ModelSerializer):
user = UserSerializer(many=False, read_only=True) # this is add by myself.
device = DeviceSerializer(many=True, read_only=True)
class Meta:
model = TokenModel
fields = ('key', 'user', 'device',)
答案 0 :(得分:3)
创建一个 自定义视图类 并使用
from rest_auth.views import LoginView
class CustomLoginView(LoginView):
def get_response(self):
orginal_response = super().get_response()
mydata = {"message": "some message", "status": "success"}
orginal_response.data.update(mydata)
return orginal_response
并将您的urls.py
更改为
urlpatterns = [
url(r'custom/login/', CustomLoginView.as_view(), name='my_custom_login')
]
现在您应该使用端点 /custom/login/
,而不是 /rest-auth/login