みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

cakephpでスレッド型掲示板

新人プログラマーです。

今度、cakephp 1.2を使ってスレッド型の掲示板を実装する事になったんですが、どうやって実装していいのか分からず困っています(汗)

他のサイト等を見てもcake等のフレームワークを使ってのスレッド型の掲示板がなどがなく参考にするものがなくお手上げ状態です。

掲示板のテーブルは
id
title
contents
parent_id
created
modifield
という感じでparent_idが親子IDという感じになります。

親と子ぐらいまでなら関連付けて取得出来るんですが、孫やそれ以下をどうやって関連付けるのかがよく分かりません。

すみませんが、どなたか教えてください。
宜しくお願いします!

投稿日時 - 2008-12-17 03:16:08

QNo.4561870

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

>孫やそれ以下をどうやって関連付けるのかがよく分かりません。

これは、子と同じ。子のレコードのIDを、孫のPARENT_IDに設定すればツリー構造ができる。問題は、それをどうやって読み取っていくか、ということだろう。一般的には、再帰したメソッドを書いてツリー構造を作っていく形になると思う。例えば、IDを引数に渡すと、そのIDをPARENT_IDとして持つレコードを検索し、得られたレコード全てについてこのメソッド自身を呼び出す……といった形になるだろう。

コントローラ側でデータを準備するつもりなら、そうやって得られたレコードを配列としてまとめていく。子を持つ場合は、更にそこに配列として子のレコードをまとめる、という形になるだろう。

いずれにせよ、「レコードの検索」「データの構築」「データの表示」のそれぞれについて、再帰で自分自身を呼び出しながら動くようなメソッドを書くことになる。このあたりがわかれば、そう難しくはないはず。

投稿日時 - 2008-12-17 09:13:55

補足

回答ありがとうございます!

なんとなくは理解出来るんですが、どうコードを書けばいいのか(汗)
出来れば具体的にコードなど書いてもらえたらうれしいです。

投稿日時 - 2008-12-18 00:19:52

あなたにオススメの質問