Smerovanie stranok v novej verzii
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Takeshi
- Člen | 596
Caute … poradte mi ako mam nastavit smerovanie, aby ked zadam
„…/www/asd“ a nastavim mu presenter a action ma hodilo na spravne miesto
… skusal som tieto verzie a neslo mi to
..... a pracujem s najnovsou verziou Nette
$container = $configurator->createContainer();
$container->router[] = new Route('asd', 'Homepage:default');
$container->router[] = new Route('asd', array(
'presenter' => 'Homepage',
'action' => 'default',
));
$container->application->run();
- Takeshi
- Člen | 596
<?php
/**
* My Application bootstrap file.
*/
use Nette\Application\Routers\Route;
// Load Nette Framework
require LIBS_DIR . '/Nette/loader.php';
// Configure application
$configurator = new Nette\Config\Configurator;
// Enable Nette Debugger for error visualisation & logging
//$configurator->setProductionMode($configurator::AUTO);
$configurator->enableDebugger(__DIR__ . '/../log');
// Enable RobotLoader - this will load all classes automatically
$configurator->setTempDirectory(__DIR__ . '/../temp');
$configurator->createRobotLoader()
->addDirectory(APP_DIR)
->addDirectory(LIBS_DIR)
->register();
// Create Dependency Injection container from config.neon file
$configurator->addConfig(__DIR__ . '/config/config.neon');
$container = $configurator->createContainer();
// Setup router
$container->router[] = new Route('index.php', 'Homepage:default', Route::ONE_WAY);
$container->router[] = new Route('<presenter>/<action>[/<id>]', 'Homepage:default');
$container->router[] = new Route('asd', 'Homepage:default');
$container->router[] = new Route('asd', array(
'presenter' => 'Homepage',
'action' => 'default',
));
// Configure and run the application!
$container->application->run();
- nanuqcz
- Člen | 822
Takeshi: Obecné routy se dávají až na konec ;-) Routa
<presenter>/<action>[/<id>]
převezme iniciativu,
ještě než se Nette stihne zeptat routy asd
:-) Když je tedy
vyměníš, bude to fungovat, jak očekáváš:
// Setup router
$container->router[] = new Route('index.php', 'Homepage:default', Route::ONE_WAY);
$container->router[] = new Route('asd', 'Homepage:default');
$container->router[] = new Route('asd', array(
'presenter' => 'Homepage',
'action' => 'default',
));
$container->router[] = new Route('<presenter>/<action>[/<id>]', 'Homepage:default');
Takže důležitá věc: Záleží na pořadí rout.