Název vozidla v URL – routování
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Martin Mates
- Člen | 179
Zdravíčko. Píšu zrovna stránku pro autobazar a rád bych měl v URL na jednotlivé vozy i jejich název. Napadlo mě dát do bootstrap.php následující:
<?php
$db = dibi::getConnection();
$cars = $db->select('custom_car_id, manufacturer_text, model_text, type_info')->from('cars')->execute()->fetchAll();
foreach ($cars as $car) {
$route = urlCreator($car['manufacturer_text'] . ' ' . $car['model_text'] . ' ' . $car['type_info']);
$router[] = new Route($car['custom_car_id'].'/'.$route.'/', array(
'presenter' => 'Main',
'view' => 'vuz',
'id' => $car['custom_car_id'],
));
}
?>
Snad je z toho jasné, co se děje. Zajímalo mě, jestli jsem neudělal nějakou prasárnu a jestli nejdu proti nějaké logice. Jak byste to řešili vy?
- Jan Tvrdík
- Nette guru | 2595
Osobně si myslím, že to prasárna je, hlavně pokud aut bude hodně.
Co spíš něco jako:
$router[] = new Route('<id>/<auto>/', array(
'presenter' => 'Main',
'view' => 'vuz',
));