Komponenta v komponentě a handle / pěkná url adresa

Who8MyDog
Člen | 1
+
0
-

Zdravím,

mám tu menší otázku jak udělat routu na komponentu, která je v komponentě a v ní je handle.

Momentální url adresa je:
/obyvaci-pokoj?categoryListingControl-default1-newProductsListingControl-page=4&do=categoryListingControl-default1-newProductsListingControl-loadNext

Routa vypadá takto:

$module[] = new Route('[<locale=cs cs|en>/]<slug .+>[/<page [0-9]+>]', [
               "presenter" => "Products",
               "action" => "default",
               "slug" => [
                   Route::FILTER_IN => function ($slug) {
                       $category = $this->categoriesLangsRepository->findBy(['url' => $slug])
                                                                   ->select("categories_langs.url")
                                                                   ->where('categories.deleted = 0 AND categories.hidden = 0')
                                                                   ->fetch();
                       if (!$category) {
                           throw new Nette\Application\BadRequestException();
                       }

                       return $slug;
                   }
               ]
           ]);

Pokud jsem zkusil místo page nastavit parametr z komponenty a do taky.

$module[] = new Route('[<locale=cs cs|en>/]<slug .+>[/<categoryListingControl-default_1-newProductsListingControl-page [0-9]+>]', [
               "presenter" => "Products",
               "action" => "default",
               "slug" => [
                   Route::FILTER_IN => function ($slug) {
                       $category = $this->categoriesLangsRepository->findBy(['url' => $slug])
                                                                   ->select("categories_langs.url")
                                                                   ->where('categories.deleted = 0 AND categories.hidden = 0')
                                                                   ->fetch();
                       if (!$category) {
                           throw new Nette\Application\BadRequestException();
                       }

                       return $slug;
                   }
               ],
               "do" => "categoryListingControl-default_1-newProductsListingControl-loadNext"
           ]);

Tak pěkné URL adresy na stránkovaní fungují. Ale bohužel se k tomu parametru nedostanu.

getParameters(); -> mi vrátí pole

array (4)
slug => "obyvaci-pokoj" (13)
action => "default" (7)
do => "categoryListingControl-default_1-newProductsListingControl-loadNext" (67)
locale => "cs" (2)

Dalším problémem je, že by jsem potřeboval i další do na categoryListingControl-default1-filtrControl-setFiltrForm, kde mi chodí categoryListingControl-default1-filtrControl-data

array (3)
0 => array (2)
name => "inStock_Skladem;Na objednávku"
value => "0"
1 => array (2)
name => "price_min"
value => "330 Kč"
2 => array (2)
name => "price_max"
value => "43393 Kč"

Nějaké nápady jak udělat takovou routu ?