mirror of
https://github.com/fastapi-users/fastapi-users.git
synced 2025-08-15 19:30:47 +08:00
Harmonize schema variable naming to avoid confusions
This commit is contained in:
@ -48,13 +48,13 @@ class FastAPIUsers(Generic[models.UP, schemas.U, schemas.UC, schemas.UU]):
|
||||
auth_backends: Sequence[AuthenticationBackend],
|
||||
user_schema: Type[schemas.U],
|
||||
user_create_schema: Type[schemas.UC],
|
||||
user_update_model: Type[schemas.UU],
|
||||
user_update_schema: Type[schemas.UU],
|
||||
):
|
||||
self.authenticator = Authenticator(auth_backends, get_user_manager)
|
||||
|
||||
self._user_schema = user_schema
|
||||
self._user_create_schema = user_create_schema
|
||||
self._user_update_schema = user_update_model
|
||||
self._user_update_schema = user_update_schema
|
||||
|
||||
self.get_user_manager = get_user_manager
|
||||
self.current_user = self.authenticator.current_user
|
||||
|
@ -1,4 +1,4 @@
|
||||
from typing import Any, Dict, Generic, Optional, Type, Union
|
||||
from typing import Any, Dict, Generic, Optional, Union
|
||||
|
||||
import jwt
|
||||
from fastapi import Request
|
||||
@ -52,7 +52,6 @@ class BaseUserManager(Generic[models.UP]):
|
||||
"""
|
||||
User management logic.
|
||||
|
||||
:attribute user_model: Model of a user.
|
||||
:attribute reset_password_token_secret: Secret to encode reset password token.
|
||||
:attribute reset_password_token_lifetime_seconds: Lifetime of reset password token.
|
||||
:attribute reset_password_token_audience: JWT audience of reset password token.
|
||||
@ -63,7 +62,6 @@ class BaseUserManager(Generic[models.UP]):
|
||||
:param user_db: Database adapter instance.
|
||||
"""
|
||||
|
||||
user_model: Type[models.UP]
|
||||
reset_password_token_secret: SecretType
|
||||
reset_password_token_lifetime_seconds: int = 3600
|
||||
reset_password_token_audience: str = RESET_PASSWORD_TOKEN_AUDIENCE
|
||||
|
@ -14,15 +14,15 @@ from fastapi_users.router.common import ErrorCode, ErrorModel
|
||||
|
||||
def get_register_router(
|
||||
get_user_manager: UserManagerDependency[models.UP],
|
||||
user_model: Type[schemas.U],
|
||||
user_create_model: Type[schemas.UC],
|
||||
user_schema: Type[schemas.U],
|
||||
user_create_schema: Type[schemas.UC],
|
||||
) -> APIRouter:
|
||||
"""Generate a router with the register route."""
|
||||
router = APIRouter()
|
||||
|
||||
@router.post(
|
||||
"/register",
|
||||
response_model=user_model,
|
||||
response_model=user_schema,
|
||||
status_code=status.HTTP_201_CREATED,
|
||||
name="register:register",
|
||||
responses={
|
||||
@ -55,11 +55,13 @@ def get_register_router(
|
||||
)
|
||||
async def register(
|
||||
request: Request,
|
||||
user: user_create_model, # type: ignore
|
||||
user_create: user_create_schema, # type: ignore
|
||||
user_manager: BaseUserManager[models.UP] = Depends(get_user_manager),
|
||||
):
|
||||
try:
|
||||
created_user = await user_manager.create(user, safe=True, request=request)
|
||||
created_user = await user_manager.create(
|
||||
user_create, safe=True, request=request
|
||||
)
|
||||
except UserAlreadyExists:
|
||||
raise HTTPException(
|
||||
status_code=status.HTTP_400_BAD_REQUEST,
|
||||
|
@ -17,8 +17,8 @@ from fastapi_users.router.common import ErrorCode, ErrorModel
|
||||
|
||||
def get_users_router(
|
||||
get_user_manager: UserManagerDependency[models.UP],
|
||||
user_model: Type[schemas.U],
|
||||
user_update_model: Type[schemas.UU],
|
||||
user_schema: Type[schemas.U],
|
||||
user_update_schema: Type[schemas.UU],
|
||||
authenticator: Authenticator,
|
||||
requires_verification: bool = False,
|
||||
) -> APIRouter:
|
||||
@ -43,7 +43,7 @@ def get_users_router(
|
||||
|
||||
@router.get(
|
||||
"/me",
|
||||
response_model=user_model,
|
||||
response_model=user_schema,
|
||||
name="users:current_user",
|
||||
responses={
|
||||
status.HTTP_401_UNAUTHORIZED: {
|
||||
@ -58,7 +58,7 @@ def get_users_router(
|
||||
|
||||
@router.patch(
|
||||
"/me",
|
||||
response_model=user_model,
|
||||
response_model=user_schema,
|
||||
dependencies=[Depends(get_current_active_user)],
|
||||
name="users:patch_current_user",
|
||||
responses={
|
||||
@ -94,7 +94,7 @@ def get_users_router(
|
||||
)
|
||||
async def update_me(
|
||||
request: Request,
|
||||
user_update: user_update_model, # type: ignore
|
||||
user_update: user_update_schema, # type: ignore
|
||||
user: models.UP = Depends(get_current_active_user),
|
||||
user_manager: BaseUserManager[models.UP] = Depends(get_user_manager),
|
||||
):
|
||||
@ -118,7 +118,7 @@ def get_users_router(
|
||||
|
||||
@router.get(
|
||||
"/{id:uuid}",
|
||||
response_model=user_model,
|
||||
response_model=user_schema,
|
||||
dependencies=[Depends(get_current_superuser)],
|
||||
name="users:user",
|
||||
responses={
|
||||
@ -138,7 +138,7 @@ def get_users_router(
|
||||
|
||||
@router.patch(
|
||||
"/{id:uuid}",
|
||||
response_model=user_model,
|
||||
response_model=user_schema,
|
||||
dependencies=[Depends(get_current_superuser)],
|
||||
name="users:patch_user",
|
||||
responses={
|
||||
@ -179,7 +179,7 @@ def get_users_router(
|
||||
},
|
||||
)
|
||||
async def update_user(
|
||||
user_update: user_update_model, # type: ignore
|
||||
user_update: user_update_schema, # type: ignore
|
||||
request: Request,
|
||||
user=Depends(get_user_or_404),
|
||||
user_manager: BaseUserManager[models.UP] = Depends(get_user_manager),
|
||||
|
@ -17,7 +17,7 @@ from fastapi_users.router.common import ErrorCode, ErrorModel
|
||||
|
||||
def get_verify_router(
|
||||
get_user_manager: UserManagerDependency[models.UP],
|
||||
user_model: Type[schemas.U],
|
||||
user_schema: Type[schemas.U],
|
||||
):
|
||||
router = APIRouter()
|
||||
|
||||
@ -41,7 +41,7 @@ def get_verify_router(
|
||||
|
||||
@router.post(
|
||||
"/verify",
|
||||
response_model=user_model,
|
||||
response_model=user_schema,
|
||||
name="verify:verify",
|
||||
responses={
|
||||
status.HTTP_400_BAD_REQUEST: {
|
||||
|
@ -100,11 +100,11 @@ class BaseTestUserManager(Generic[models.UP], BaseUserManager[models.UP]):
|
||||
|
||||
|
||||
class UserManager(BaseTestUserManager[UserModel]):
|
||||
user_model = UserModel
|
||||
pass
|
||||
|
||||
|
||||
class UserManagerOAuth(BaseTestUserManager[UserOAuthModel]):
|
||||
user_model = UserOAuthModel
|
||||
pass
|
||||
|
||||
|
||||
class UserManagerMock(BaseTestUserManager[models.UP]):
|
||||
|
Reference in New Issue
Block a user