Optimize the coupling of user social plugin (#950)

This commit is contained in:
Wu Clan
2025-12-04 11:56:37 +08:00
committed by GitHub
parent a0e6e12d85
commit aad9afa9bb

View File

@@ -25,7 +25,7 @@ from backend.app.admin.schema.user import (
UpdateUserParam,
)
from backend.app.admin.utils.password_security import get_hash_password
from backend.plugin.oauth2.crud.crud_user_social import user_social_dao
from backend.utils.import_parse import import_module_cached
from backend.utils.serializers import select_join_serialize
from backend.utils.timezone import timezone
@@ -299,7 +299,13 @@ class CRUDUser(CRUDPlus[User]):
user_role_stmt = delete(user_role).where(user_role.c.user_id == user_id)
await db.execute(user_role_stmt)
await user_social_dao.delete_by_user_id(db, user_id)
try:
user_social = import_module_cached('backend.plugin.oauth2.crud.crud_user_social')
user_social_dao = user_social.user_social_dao
except (ImportError, AttributeError):
pass
else:
await user_social_dao.delete_by_user_id(db, user_id)
return await self.delete_model(db, user_id)