Логин не работает в Django после перехода на 3.2 получаем ошибку: django.db.utils.ProgrammingError
Недавно я перевел свою версию Django с 2.2 на 3.2, и после этого логин перестал работать. В версии 2.2 он работал нормально. Он выдает ошибку:-
Вот как выглядит мой urls.py -
from django.conf import settings
from django.conf.urls import include, url
from django.contrib import admin
from django.views.generic import RedirectView
from empereon.views import home, security_question, back_to_login
from django.conf.urls.static import static
from django.contrib.auth.decorators import login_required
from allauth.account.views import login
from . import views
from users.views import password_change
from .views import back_to_dashboard, handler404, handler500
from rest_framework_swagger.views import get_swagger_view
urlpatterns = [
# allauth urls.
url(r'^accounts/login', login),
]
Может ли это быть связано с другим методом хэширования паролей или есть что-то еще, что мне придется сделать после перехода на Django 3.2. Может ли кто-нибудь помочь мне выяснить, в чем проблема?
В чем проблема - в логине администратора или на стороне клиента
Попробуйте удалить файл SQL и выполнить еще одну миграцию
[первопричина]
django-mssql-backend поддерживает только Django 2.2 и 3.0
[Решение]
- Установите pyodbc 3.0 (или новее)
- Установите библиотеку mssql-django .
pip install mssql-django
Установите параметр ENGINE в файле settings.py, используемом вашим Django-приложением или проектом, на 'mssql':
'ENGINE': 'mssql'