Быстрое создание нового раздела
Для примера добавим в админ-панель новый раздел для работы с новостями.
Модель
Добавим новую модель Post.
Schema::create('posts', function (Blueprint $table) {
$table->id();
$table->string('title');
$table->text('desc');
$table->timestamps();
});Роуты
Добавим роуты для вывода списка, просмотра, редактирования и создания новости.
// routes/admin.php
Route::get('/admin/posts', function () {
return view('admin.posts.list');
})->name('posts.list');
Route::get('/admin/posts/{post}/edit', function (Post $post) {
return view('admin.posts.edit')
->with([
'model' => $post
]);
})->name('posts.edit');
Route::get('/admin/posts/{post}/show', function (Post $post) {
return view('admin.posts.show')
->with([
'model' => $post
]);
})->name('posts.show');
Route::get('/admin/posts/create', function () {
return view('admin.posts.create')
->with([
'model' => new Post()
]);
})->name('posts.create');Шаблоны
список новостей
редактирование новости
создание новости
просмотр новости
Меню
Добавим новый раздел в меню.
Хлебные крошки
Добавим новый файл с хлебными крошками.
Вывод списка новостей
Создадим livewire компонент для вывода списка новостей.
Код компонента:
Редактирование и создание новости
Создадим livewire компонент для редактирования и создания новости.
Код компонента:
Шаблон компонента:
Просмотр новости
Создадим livewire компонент для просмотра новости.
Код компонента:
Шаблон компонента:
Last updated