mirror of
https://github.com/fastapi-users/fastapi-users.git
synced 2026-03-13 07:49:55 +08:00
* Fix #68: use makefun to generate dynamic dependencies * Remove every Starlette imports * Split every routers and remove event handlers * Make users router optional * Pass after_update handler to get_users_router * Update documentation * Remove test file * Write migration doc for splitted routers
1.2 KiB
1.2 KiB
Users router
This router provides routes to manage users. Check the routes usage to learn how to use them.
Setup
from fastapi import FastAPI
from fastapi_users import FastAPIUsers
fastapi_users = FastAPIUsers(
user_db,
auth_backends,
User,
UserCreate,
UserUpdate,
UserDB,
)
app = FastAPI()
app.include_router(
fastapi_users.get_users_router(),
prefix="/users",
tags=["users"],
)
After update
You can provide a custom function to be called after a successful update user request. It is called with three arguments:
- The user which was updated.
- The dictionary containing the updated fields.
- The original
Requestobject.
It may be useful if you wish for example update your user in a data analytics or customer success platform.
You can define it as an async or standard method.
Example:
def on_after_update(user: UserDB, updated_user_data: Dict[str, Any], request: Request):
print(f"User {user.id} has been updated with the following data: {updated_user_data}")
app.include_router(
fastapi_users.get_users_router(on_after_update),
prefix="/users",
tags=["users"],
)