我有一個序列化程序和一個像我這樣登錄的視圖。如何使用django-rest-framework創建一個登錄視圖
class LoginView(generics.RetrieveAPIView):
serializer_class= LoginSerializer
queryset=User.objects.all()
error_messages = {
'invalid': "Invalid username or password",
'disabled': "Sorry, this account is suspended",
}
def _error_response(self, message_key):
data = {
'success': False,
'message': self.error_messages[message_key],
'user_id': None,
}
def post(self,request):
email = request.POST.get('email')
password = request.POST.get('password')
user = authenticate(email=email, password=password)
if user is not None:
if user.is_active:
login(request, user)
return Response(status=status.HTTP_100_OK)
return self._error_response('disabled')
return self._error_response('invalid')
和串行:
class LoginSerializer(serializers.ModelSerializer):
class Meta:
model=User
fields=('email','password')
我的網址:
(r'^login/$',LoginView.as_view())
當我運行代碼我得到一個錯誤 在/登錄/ 預計視圖LoginView ImproperlyConfigured是使用名爲「pk」的URL關鍵字參數進行調用。修正你的URL conf,或者在視圖上正確設置.lookup_field
屬性。
我目前沒有重定向在我看來。 我做錯了什麼?
請你提供你的'urls.py',你如何重定向到您的登錄頁面。請更新現有的問題。 – Nilesh 2014-09-20 12:39:22
我已經更新了這個問題。 – zacmwa 2014-09-20 13:38:46