Маршруты

Вы просматриваете документацию старой версии MoonShine. Рассмотрите возможность обновления вашего проекта до MoonShine 2.x.

# Маршруты ресурса

В MoonShine у ресурса для различных действий зарегистрировано множество маршрутов:

$this->route('index'); // GET|HEAD - список записей
$this->route('create'); // GET|HEAD - создание новой записи
$this->route('store'); // POST - сохранение новой записи
$this->route('edit', $resourceItem); // GET|HEAD - редактирование записи
$this->route('update', $resourceItem); // PUT|PATCH - сохранение записи
$this->route('destroy', $resourceItem); // DELETE - удаление записи
$this->route('show', $resourceItem); // GET|HEAD - просмотр записи
$this->route('query-tag', $queryTag); // GET|HEAD - список записей с применением быстрого фильтра / тега
$this->route('update-column', $resourceItem); // PUT - сохранение поля записи

# Кастомные маршруты

Через метод resolveRoutes() можно добавить или переопределить маршрут.

namespace App\MoonShine\Resources;
 
use App\Models\Post;
use MoonShine\Resources\Resource;
 
class PostResource extends Resource
{
public static string $model = Post::class;
 
// ...
 
public function resolveRoutes(): void
{
parent::resolveRoutes();
 
Route::prefix('resource')->group(function (): void {
Route::get("{$this->uriKey()}/restore/{resourceItem}", function (Post $item) {
$item->restore();
 
return redirect()->back();
});
});
}
 
// ...
}

Для доступа к маршруту вне ресурса можно следующим способом (new Resource())->route('index').