對於Laravel來說相當新穎,我正在爲我的應用程序創建一個樹狀分類結構。這是我用過的代碼,但仍然無法實現我想要的。 我的控制器:在Laravel 5中創建一個嵌套的類別列表
public function index()
{
$categories = Category::with('children')->get();
return view('backend.categories.index')->with('categories', $categories);
}
我的類模型:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Category extends Model
{
protected $guarded = ['id'];
public function parent()
{
return $this->belongsTo('App\Category', 'parent_id');
}
public function children()
{
return $this->hasMany('App\Category', 'parent_id');
}
}
我的觀點:
<table class="table table-bordered table-hover">
<thead>
<tr>
<th>Name</th>
<th>Description</th>
<th>Slug</th>
<th>Action</th>
</tr>
</thead>
<tbody>
@foreach ($categories as $category)
{{[email protected] ($category->children as $children)--}}
<tr>
<td>{{ $category->name }}</td>
<td>{{ $category->description }}</td>
<td>{{ $category->slug }}</td>
<td><a class="edit" href="{!! action('Admin\[email protected]', $category->id) !!}" title="Edit"><i class="fa fa-pencil-square-o"></a></i> <a class="delete" href="{!! action('Admin\[email protected]', $category->id) !!}" title="Are you sure you want to delete?"><i class="fa fa-trash-o"></i></a></td>
@foreach ($category->children as $children)
<tr>
<td>{{ $children->name }}</td>
<td>{{ $children->description }}</td>
<td>{{ $children->slug }}</td>
<td></td>
</tr>
@endforeach
</tr>
</tbody>
{{[email protected]}}
@endforeach
</table>
正在試圖製造類似下面的結構:
- 服飾
- 袋
- 布
- 手機
- 片
- 智能手機
編輯 有我的數據庫結構:
+-------------+------------------+------+-----+---------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+------------------+------+-----+---------------------+----------------+
| id | int(10) unsigned | NO | PRI | NULL | auto_increment |
| name | varchar(255) | NO | | NULL | |
| slug | varchar(255) | NO | | NULL | |
| parent_id | int(11) | YES | | NULL | |
| description | text | NO | | NULL | |
| created_at | timestamp | NO | | 0000-00-00 00:00:00 | |
| updated_at | timestamp | NO | | 0000-00-00 00:00:00 | |
+-------------+------------------+------+-----+---------------------+----------------+
您正在載入分類數據。嘗試--- $ categories = Category :: with(['parent','children']) - > get(); – user4621032
真的只是加載孩子,但如果我加載父母和孩子,我如何在我的視圖中使用它。對不起Laravel – ammezie