多くのサブフォーラムを持つことができるフォーラムを検討してください。フォーラムのカテゴリ(is_category
)はそれら内のスレッドを持つことはできませんLaravel - 「スレッド化された」レコードのレコードの総数を数える
id
、parent_id
、name
、is_category
:
私forums
表には、このようなものです。ただし、parent_id
はテーブルのid
です。それはフォーラムにサブフォーラムを置くことができる方法です。
| id | parent_id | name | is_category |
|----|-----------|-------------------|-------------|
| 1 | 0 | Suggestions | 1 |
| 2 | 1 | site suggestions | 0 |
| 3 | 1 | forum suggestions | 0 |
| 4 | 2 | bugs | 0 |
マイビュー:
要するに、フォーラムは、複数のサブフォーラムのように...デモレコードを持つことができ、より多くのサブフォーラムを持つことができ、多くのサブフォーラムを持つことができます私が試してみました何
@if ($forum->hasSubforum())
@foreach ($forum->subforums as $subforum)
{{ $subforum->name }}
<h1>subforums</h1>
@if ($forum->hasSubforum())
@foreach ($subforum->subforums as $child)
{{ $subforum->name }}
@endforeach
@endif
@endforeach
@endif
:
$threads = 0;
while(!$forum->subforums->isEmpty()) {
$threads += $forum->threads->count();
while(!$forum->subforums->isEmpty()) {
$threads += $forum->threads->count();
}
}
はこれも動作しません... :(
TL; DRご覧のとおり、サブフォームはユーザーに表示されます。しかし、サブフォーラムの投稿数を表示したいのですが?サブフォーラムにはより多くのサブフォーラムがあり、多くのスレッドを持つことができます。私は単純に$subforum->threads->count()
を行うことはできません。それは、各サブフォーラムが持つスレッド数を数えるだけだからです。私はまた、サブフォーラムのすべての子が持つスレッドの数を数えたいと思う。
[Laravel再帰クエリの答え](http://stackoverflow.com/questions/22014903/laravel-query-builder-for-recursive-results-e-g-id-parent-id)。 – ourmandave