これがどういう仕組みか分かりませんので、私は尋ねています。私はまだ掲示板システムに取り組んでおり、それぞれカテゴリ、サブカテゴリの下にそれぞれ欲しいです。例えばlaravel 5.3のforeach()に無効な引数が指定されています
私はLaraCastsに次のスレッドを使用してこれを行っています https://laracasts.com/discuss/channels/eloquent/eloquent-getting-subcategories-from-the-categories
今私のIndexControllerは次のようになります。
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Thread;
use App\Chat;
use App\Category;
class IndexController extends Controller
{
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$threads = Thread::all()->toArray();
$chats = Chat::orderBy('id', 'DESC')->take(50)->with('author')->get();
$categories = Category::with('sub_category')->get();
return view('index', compact('threads','chats','categories'));
}
}
これは私のカテゴリーのモデルであります:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Category extends Model
{
public function sub_category()
{
return $this->belongsTo(self::class, 'parent_id', 'id');
}
public function parent_category()
{
return $this->hasMany(self::class, 'id', 'parent_id');
}
}
マイビュー(index.blade.php):
@foreach($categories as $category)
<div class="col-md-8">
<div class="panel panel-primary">
<div class="panel-heading"><i class="fa fa-angle-right" aria-hidden="true"></i> {{ $category->caption }}</div>
<div class="panel-body">
@foreach($category->sub_category as $sub_category)
<div class="row forum-row">
<div class="col-xs-12 col-md-8 col-sm-8">
<div class="hidden-xs visible-sm visible-lg visible-md pull-left forum-icon-read">
<i class="fa fa-comment"></i>
</div>
<a href="#">{{ $sub_category->caption }}</a><br>
<small>{{ $sub_category->desc }}</small>
</div>
<div class="col-xs-12 col-md-4 col-sm-4 forum-latest-container">
<p class="forum-data cutoff"><a href="#">Test</a></p>
<small>
door <a class="Donateur" href="/user-Sygun">Sygun</a>
<p class="forum-data">
2 minuten geleden </p>
</small>
</div>
</div>
@endforeach
</div>
</div>
</div>
@endforeach
私はまた、2つのデータベースのテーブルがあります。
Sub_categories(ID、キャプション、PARENT_ID、min_rank、DESC)
- を
カテゴリ(ID、字幕、分/ランク、降順)
私が取得エラーメッセージ:
foreachのために供給無効な引数()
あなたはこれを達成するための正しい方法は何か教えてもらえますか?
あなたのDB 'Sub_categories'と' Categories'には2つのテーブルがありますか? –
はい私は@AmitGuptaを持っています – Sygun
'$ category-> sub_category'は配列ですか? ( 'var_dump($ category-> sub_category);で内部ループの前に)ベリファイする - おそらく' $ category'を代わりにループしたいのですか? – Qirel