From 07cbc52c9ab86ff4888e97391c4e0f932ac71693 Mon Sep 17 00:00:00 2001 From: Classic298 <27028174+Classic298@users.noreply.github.com> Date: Wed, 31 Dec 2025 08:30:31 +0100 Subject: [PATCH] fix: prevent update_user_settings_by_id crash when user is None (#20278) Get user first and check for None before accessing .settings attribute. Returns None gracefully instead of crashing with AttributeError. --- backend/open_webui/models/users.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/backend/open_webui/models/users.py b/backend/open_webui/models/users.py index b48e7931b..b19f3809b 100644 --- a/backend/open_webui/models/users.py +++ b/backend/open_webui/models/users.py @@ -613,7 +613,11 @@ class UsersTable: def update_user_settings_by_id(self, id: str, updated: dict, db: Optional[Session] = None) -> Optional[UserModel]: try: with get_db_context(db) as db: - user_settings = db.query(User).filter_by(id=id).first().settings + user = db.query(User).filter_by(id=id).first() + if not user: + return None + + user_settings = user.settings if user_settings is None: user_settings = {}