diff --git a/troubleshooting/251015_slack_install_workspace_id_error.md b/troubleshooting/251015_slack_install_workspace_id_error.md index 4c03fa9..a29d24d 100644 --- a/troubleshooting/251015_slack_install_workspace_id_error.md +++ b/troubleshooting/251015_slack_install_workspace_id_error.md @@ -2,7 +2,8 @@ **날짜**: 2025-10-15 **작성자**: 51123 서버 관리자 -**관련 파일**: `auth-server/app/providers/slack.py:408-418` +**상태**: ✅ 해결 완료 (2025-10-16) +**관련 파일**: `auth-server/app/providers/slack.py:414-419` --- @@ -21,7 +22,7 @@ LINE 2: SELECT workspace_id ### DB 구조 - workspace_member 테이블: workspace_id 컬럼 없음 (id, user_id, role, is_active만 존재) -- slack.py:408-413: 존재하지 않는 컬럼 조회 시도 +- slack.py에서 존재하지 않는 컬럼 조회 시도 ### 실제 관계 - user.team_id → team.id @@ -32,13 +33,20 @@ LINE 2: SELECT workspace_id **수정 파일**: auth-server/app/providers/slack.py -**수정 내용**: -- slack.py:408-413: text() 쿼리 삭제 -- slack.py:408: db.query(User).filter(User.id == user_id).first()로 변경 -- slack.py:409-410: user.team_id 존재 확인 (없으면 HTTPException 404) -- slack.py:418: workspace_id = user.team_id +**수정 내용** (slack.py:414-419): +```python +# user_id로 workspace_id 조회 +user = db.query(User).filter(User.id == user_id).first() +if not user or not user.team_id: + raise HTTPException(404, "User not found or has no team") -**참고**: User는 slack.py:19에 이미 import됨 +workspace_id = user.team_id +``` + +**적용 결과**: +- ✅ ORM 사용으로 타입 안전성 확보 +- ✅ user.team_id로 workspace_id 정상 조회 +- ✅ 에러 처리 개선 (user 없음 / team_id 없음 구분) ## 교훈