2009-06-14 2 views
0

블로그에 대한 의견 시스템을 만들려고합니다. 수정 된 선주문 통과 시스템이 작동합니다 (이 가이드에 사용 된 : http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/).댓글 시스템을위한 수정 된 선주문 추적

하지만 몇 가지 문제가 있습니다. 나는이 가이드가 다른 블로그 게시물을 관리하는 방법과 회신이 아닌 의견을 추가하는 방법을 설명한다고 생각하지 않습니다.

나는 "blog_post_id"와 "루트"라고 내 의견 테이블에 열을 추가 :

+-------------+----------------------+-----+-----+ 

| comment_id | message    | lft | rgt | 
auto increment 
+-------------+----------------------+-----+-----+ 

는이를 관리 할 수있는 좋은 방법입니다 : 같은

내 의견 테이블이 보인다. 블로그 게시물을 만들면 blog_post_id가있는 주석 테이블에 항목을 추가하고 루트를 true로 설정합니다. 그런 다음, lft는 comment_id이고 right는 comment_id + 1입니다.

블로그 게시물에 대한 주석을로드하려면 blog_post_id = x 및 root = true 인 lft 및 rgt을 찾은 다음 모든 주석을 선택하십시오 lft와 rgt 사이에 blog_post_id가 x ...

나는 방금이 방법을 생각해 냈습니다. 그래서 나는 더 좋은 방법이 있어야한다고 확신합니다.

감사

답변

0

어떻게 가상 주석 (주석 트리의 루트)로 블로그 게시물 자체를 blog_post_id 열을 추가하고 생각은 어떻습니까? 그런 다음 여러 자녀를 가질 수 있습니다. , 당신은 당신이 모든 쿼리에 AND blog_post_id == foo를 추가하고 항상 루트 코멘트를 무시주의와 변화가 그 기사의 모든 알고리즘을 사용할 수 있습니다 (이 블로그 자체를 의미하기 때문에입니다.)

관련 문제