1
laravelにフォーラムを構築しています。私はそうのようにそのトピックで、各フォーラムのカテゴリを一覧表示したい:Laravelのトピックでフォーラムカテゴリを一覧表示する方法
Category 1
-Topic 1
-Topic 2
-Topic 2
Category 2
-Topic 1
-Topic 2
-Topic 3
But I am getting this in stead
Category 1
-Topic 1
Category 2
-Topic 1
これは私のコントローラの私の選択クエリ
$this->categories = DB::table('forum_categories')
->leftjoin('forum_topics','category_id','=','forum_categories.id')
->leftjoin('forum_posts','topic_id','=','forum_topics.id')
->orderby('category_name','ASC')
->get();
これは
public function forum_post()
{
return $this->hasMany('App\Forum_topic','category_id');
}
私Forum_categoriesモデルであります
マイフォーラムタイプのモデル
public function post()
{
return $this->hasMany('App\Forum_post','id');
}
Forum_post model
public function topic()
{
return $this->belongsTo('App\Forum_topic','id');
}
私は同様の結果で左結合を試みました。助けてください。
マイビュー
@foreach($categories as $category)
<h2> {{$category->category_name}}</h2>
-<p>{{$category->topic_subject}}</p>
@endoforeach
は返事をいただきありがとうございます。私はちょうど私のモデルの一部を投稿して申し訳ありません。私のすべてのモデルはEloquentに拡張されています。私のモデルとモデルが表す表は大丈夫です。 Forum_categoryモデルは、例えばforum_categoriesテーブルを指し示しています。Forum_postモデルで行った間違いを指摘してくれてありがとう。しかし、結果は同じです。各カテゴリの下には1つのトピックのみが表示されます。 – wafutech
さて、あなたのデータが今のようになっていることは間違いありません。 – Ohgodwhy
しかし、なぜですか。一部のカテゴリには複数のトピックがありますが、1つのみが表示されます。私は各カテゴリー内で別のforeachループを使用しようとしましたが、残念ながらこれはうまくいきませんでした。何かが間違っていますが、私は何を知っていません。 – wafutech