Я хочу создать новый маршрут для сброса некоторых вещей в symfony. Таким образом, я нашел действие show controller для материала, который я хочу записать, скопировал его и поместил под ним. Я переименовал функцию, название и изменил шаблон. Вот новая функция:
/**
* @Route("/distributors/city-test/{citySlug}", name="distributors_city_dump")
* @Template("StenikDealersBundle:Frontend:city_details_dump.html.twig")
*/
public function cityTestAction(Request $request, $citySlug)
{
$em = $this->getDoctrine()->getManager();
$cityRepository = $em->getRepository(City::class);
$locale = $request->getLocale();
$city = $cityRepository->findOneBySlugAndLocale($citySlug, $locale);
if (!$city) {
throw $this->createNotFoundException('Page not found');
}
$dealersRepository = $em->getRepository('StenikDealersBundle:Dealer');
$distributors = $dealersRepository->findAllByLocaleAndCity($locale, $city->getId());
$content = $em->getRepository('StenikContentBundle:Content')->findOneById(7);
if (!$content) {
throw $this->createNotFoundException('Page not found');
}
$distributorsArray = $this->prepareDistributors($distributors);
$dispatcher = $this->get('event_dispatcher');
$contentToDispatch = clone $content;
$contentToDispatch->setTitle($contentToDispatch->getTitle() . ' - ' . $city->getTitle());
$event = new \Stenik\SEOBundle\Event\SeoEvent($contentToDispatch);
$dispatcher->dispatch('stenik.seo', $event);
$breadCrumbs = array($content->getTitle() => $this->generateUrl('distributors'), $city->getTitle() => null);
$allCities = $em->getRepository(City::class)->findAllByLocale($request->getLocale());
return [
'city' => $city,
'workingTimeUtils' => $this->get('stenik.dealers.working_time_utils'),
'sidebar' => $this->getSideBar($request, $allCities),
'distributors' => $distributors,
'content' => $content,
'breadCrumbs' => $breadCrumbs,
'distributorsArray' => json_encode($distributorsArray),
'length' => count($distributors),
];
}
Исходная функция такая же, но имя функции cityAction
, имя параметра distributors_city
, URL-адрес /distributors/city/{citySlug}
и шаблон city_details.html.twig
Исходная функция работает нормально, но когда я пытаюсь ввести URL-адрес city-test
, возвращается 404 не найденный ответ. Что я могу пропустить? symfony версия 2.8
РЕДАКТИРОВАТЬ: полный путь, который я запрашиваю, является example.com/bg/distributors/city-test/sofiya