mirror of
https://github.com/fastapi-users/fastapi-users.git
synced 2025-08-15 19:30:47 +08:00

* Implement Transport classes * Implement authentication strategy classes * Revamp authentication with Transport and Strategy * Revamp strategy and OAuth so that they can use a callable dependency * Update docstring * Make ErrorCode a proper Enum and cleanup unused OpenAPI utils * Remove useless check * Tweak typing in authenticator * Update docs * Improve logout/destroy token logic * Update docs * Update docs * Update docs and full examples * Apply formatting to examples * Update OAuth doc and examples * Add migration doc * Implement Redis session token * Add Redis Session documentation * RedisSession -> Redis * Fix links in docs
31 lines
687 B
Python
31 lines
687 B
Python
from fastapi_users import models
|
|
from fastapi_users.db import TortoiseBaseOAuthAccountModel, TortoiseBaseUserModel
|
|
from tortoise import fields
|
|
from tortoise.contrib.pydantic import PydanticModel
|
|
|
|
|
|
class User(models.BaseUser, models.BaseOAuthAccountMixin):
|
|
pass
|
|
|
|
|
|
class UserCreate(models.BaseUserCreate):
|
|
pass
|
|
|
|
|
|
class UserUpdate(models.BaseUserUpdate):
|
|
pass
|
|
|
|
|
|
class UserModel(TortoiseBaseUserModel):
|
|
pass
|
|
|
|
|
|
class UserDB(User, models.BaseUserDB, PydanticModel):
|
|
class Config:
|
|
orm_mode = True
|
|
orig_model = UserModel
|
|
|
|
|
|
class OAuthAccount(TortoiseBaseOAuthAccountModel):
|
|
user = fields.ForeignKeyField("models.UserModel", related_name="oauth_accounts")
|