Фастадмин не записывает регистрацию модели классаPython

Программы на Python
Ответить
Anonymous
 Фастадмин не записывает регистрацию модели класса

Сообщение Anonymous »

Моя модель пользователя наследуется от библиотеки fastapi-users.
Когда я пытаюсь войти в панель администратора, получаю сообщение об ошибке «Модель пользователя не зарегистрирована».
from core.models import Base
from fastapi_users.db import SQLAlchemyBaseUserTable
from .mixins import IntIdPkMixin, CompanyRelationMixin
from core.types.user_id import UserIdType

class User(
Base,
IntIdPkMixin,
CompanyRelationMixin,
SQLAlchemyBaseUserTable[UserIdType],
):
...
@register(User, sqlalchemy_sessionmaker=db_helper.session_factory)
class UserAdmin(SqlAlchemyModelAdmin):
exclude = ("hash_password",)
list_display = ("id", "email", "is_superuser", "is_active")
list_display_links = ("id", "email")
list_filter = ("id", "email", "is_superuser", "is_active")
search_fields = ("email",)

async def authenticate(self, email: str, password: str) -> UUID | int | None:
sessionmaker = self.get_sessionmaker()
async with sessionmaker() as session:
query = select(self.model_cls).filter_by(email=email, password=password, is_superuser=True)
result = await session.scalars(query)
obj = result.first()
if not obj:
return None
if not bcrypt.checkpw(password.encode(), obj.hash_password.encode()):
return None
return obj.id


Подробнее здесь: https://stackoverflow.com/questions/796 ... lass-model
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»