1. 찬반순/ 인기순/ 최근순 : database에서 가져올때 orderby로 조절
2. 부모글과(원본글) 자식글(댓글)
3. 글은 글인데- 원본글에 달린 글 : 부모글과 공유하는 값 설정 필요 - group number로 묶어준다.
4. indent(들여쓰기) 필요 - 테이블 설계할때 넣는다
5. 테이블 설계에 필요한 넘버 : 1) primary key넘버 2) 그룹넘버 3) indent넘버
6. 댓글의 정렬( 굳이 넣고싶다면) 을 위한 컬럼 추가할 수 있음. 하지만 어짜피 writedate등으로 정렬할수있으므로 필수는 아님.
7. 그룹번호를 어떻게 설정하는가??<<<중요!!!!
부모글에 넣은 그룹번호 = 자식글에 넣은 그룹번호
8. indent 설정: 1) 0일 경우: 나는 부모글이다 라는 뜻. default 0으로 테이블 설계
2) 자식글 : 1
3) 손자글 : 2...
9. 글 순서 (answer number) : 댓글의 정렬을 위한 컬럼. 부모글의 글순서 + 1
DB에 데이터가들어갈때는 아무렇게나 들어감- 따라서 키값을 이용해서 정렬해주어야함
10.
insert할 당시에는 아직 한개도 번호가 없으므로 1이들어간다(그룹번호)
들여쓰기 = 부모글 들여쓰기 +1. 들여쓰기 숫자에 따라서 들여쓰기 기호갯수맞추어 넣기
글순서= 부모글 글순서+1
번호 제목 그룹번호 들여쓰기 글순서
1 title1 max(번호)+1=1 0 0
7 ▶son2 1 1 1
6 ▶son 1 1 1-> 2로 바뀌어야함
2 title2 2 0 0
5 ▶son1 2 1 1
3 title3 3 0 0
4 title4 4 0 0
글순서=부모글+1 한 후에. 재조정이 필요함- 자식들끼리의 순서조정
UPDATE tb_bbs SET ansno=ansno+1 WHERE grpno= 동일넘버 and anasno>=ansno+1
하면되겠다!!
11. 신경써야 할것들
1) 들여쓰기넘버: 부모글 + 1 , 해당 숫자만큼 들여쓰기 기호 넣어서 view에 출력.
손자글의 경우 부모글 +1+1 이된다. 그룹넘버는 동일함
2) 글순서: 같은 그룹넘버를가진 게시글 내에서의 구분. 부모의 순서 + 1 .
중간에 끼어들경우- 다른 게시글의 순서조정필요함.
3) 그룹넘버: 다른 게시글과의 구분을 위한 넘버. 조상의 그룹번호를 공유.
댓글 없음:
댓글 쓰기