Создание Login Api с пользовательской моделью пользователя django с определенными мною полями username и emp_password
Аутентификация по пользовательской модели не работает для меня Мне нужно переопределить поле пароля по умолчанию с моим определением поля emp_password, потому что в базе данных я уже создал пользователей с их паролями с именем поля emp_password. Я пытаюсь сопоставить имя пользователя и пароль с полем emp_password таблицы сотрудников. Я пытаюсь это сделать уже 2 дня и все еще застрял в этой проблеме. Пожалуйста, помогите мне, спасибо заранее. Позвольте поделиться с вами кодом
models.py
Здравствуйте всем, пользовательская модель аутентификации пользователя не работает для меня Мне нужно переопределить поле пароля по умолчанию с моим определением поля emp_password, потому что в базе данных я уже создал пользователей с их паролями с именем поля emp_password. Я пытаюсь сопоставить свое имя пользователя и пароль с полем emp_password таблицы сотрудников и если все работает, то сделать login api для входа сотрудников. Позвольте поделиться с вами кодом
models.py
settings.py
AUTH_USER_MODEL = "login_app.Employee"
Запомнить уже созданные таблицы
urls.py
from django.contrib import admin
from django.urls import path
from .views import ExampleView, UserLoginApiView
urlpatterns = [
path('api/',ExampleView.as_view()),
path('', UserLoginApiView.as_view()),
]
from rest_framework.response import Response
from rest_framework.views import APIView
from rest_framework.settings import api_settings
from rest_framework.authentication import TokenAuthentication
from rest_framework.authtoken.views import ObtainAuthToken
class ExampleView(APIView):
# authentication_classes = [SessionAuthentication, BasicAuthentication]
# permission_classes = [IsAuthenticated]
authentication_classes = [TokenAuthentication]
def get(self, request, format=None):
content = {
'user': str(request.user), # `django.contrib.auth.User` instance.
'auth': str(request.auth), # None
}
return Response(content)
def post(self, request, format=None):
print("request,", request['username'])
content = {
'user': str(request.user), # `django.contrib.auth.User` instance.
'auth': str(request.auth), # None
}
return Response(content)
class UserLoginApiView(ObtainAuthToken):
""" user login api """
renderer_classes = api_settings.DEFAULT_RENDERER_CLASSES