Todo 테이블이 있고 이 Todo를 1:n으로 가지고 있는 User 테이블과 Team 테이블이 있음
그러면 Todo 테이블에는 외래키로 User테이블의 ID 혹은 Team 테이블의 ID가 들어가고 둘다 NULLABLE로 만들어야 하잖음?
이거 해결하는 방법 생각해본게
1. UserTodo 따로 TeamTodo 따로 만드는 방법
2. Workspace 테이블을 만들어서 User 테이블하고 Todo 테이블에 1:1로 묶고 Todo랑 Workspace를 1:n으로 묶는 방법
1은 완전 같은 역할하는 Todo를 나눠야 한다는 단점이 있는 거 같고
2는 원래라면 User->Todo로 바로 갈 수 있는 걸 User->Workspace->Todo이렇게 거쳐 가야된다는 게 단점 같음
그래서 뭔가 더 좋은 방법이 있지 않을까 싶은데.. 도움 부탁드립니다. 감사합니다.
마지막으로 2번째 단점 하나 더 있는게 결국엔 Workspace에도 User 혹은 Team 테이블의 ID가 들어가야 되서 원점임 도움 부탁드립니다.
TODO 하나로 하고, 외래키 안써도 상관없지않남?
User Table -> User_N_Todo_Table <- TODO Table Team Table -> Team_N_Todo_Table <- TODO Table
TODO_IN_USER_TABLE, TODO_IN_Team_TABLE은 그냥 View로 만들면 됨
오 View라는 개념이 따로 있나보네요 찾아보고 적용해보겠습니다. 감사합니다.