Маршруты

# Основы

$resource->url(); // First page of the resource
 
$resource->route($name, $key, $params); // Advanced method for obtaining routes
 
$resource->pageUrl($page, $params, $fragment); // Advanced method for obtaining page`s route
 
$resource->indexPageUrl(); // index page
$resource->indexPageUrl(['query-tag' => $tag->uri()]); // query tag
 
$resource->formPageUrl(); // create page
$resource->formPageUrl(1); // edit page by int
$resource->formPageUrl($item); // edit page by Model
 
$resource->detailPageUrl(1); // detail page by int
$resource->detailPageUrl($item); // detail page by Model
 
$resource->asyncMethodUrl('updateSomething'); // ANY
$resource->fragmentLoadUrl('table-index', $resource->formPage());
 
// CRUD
$resource->route('crud.update', $data->getKey()); // PUT
$resource->route('crud.store')); // POST
$resource->route('crud.destroy', $data->getKey()); // DELETE
$resource->route('crud.massDelete'); // DELETE
 
// Handlers
$resource->route('handler', query: ['handlerUri' => $export->uriKey()]);
$page->url(); // page url
$page->route($params); // Advanced method for obtaining routes
 
 
$page->asyncMethodUrl('updateSomething'); // ANY
 
$page->fragmentLoadUrl('table-index');

# Helper

Также можно воспользоваться хелпером to_page:

to_page(
string|Page|null $page = null,
string|ResourceContract|null $resource = null,
array $params = [],
bool $redirect = false,
?string $fragment = null
)
  • $page - страница или alias страницы (опционально),
  • $resource - ресурс или alias ресурса (опционально),
  • $params - дополнительный query,
  • $redirect - при необходимости сразу выполнить редирект,
  • $fragment - url будет использован для Fragment загрузки.
to_page(page: PageType::FORM);
to_page(page: IndexPage::class);
to_page(page: IndexPage::class, resource: PostResource::class);
to_page(page: new IndexPage(), resource: new PostResource());
to_page(page: PageType::FORM, redirect: true);
to_page(page: PageType::FORM, fragment: true);

За более подробной информацией о типах страниц обратитесь к разделу PageType .

# Текущая страница

Ресурс модели имеет методы позволяющие проверить какой страницей является текущая для построения дальнейшей логики.

$resource->isNowOnIndex(); // индексная страница
$resource->isNowOnForm(); // страница создания или редактирования
$resource->isNowOnCreateForm(); // страница создания
$resource->isNowOnUpdateForm(); // страница редактирования
$resource->isNowOnDetail(); // детальная страница