я столкнулся следующее сообщение об ошибке:Проблема с маршрутизацией на моем Symfony2 проекта
An exception has been thrown during the rendering of a template ("Unable to generate a URL for the named route "casanet_addpaperpage" as such route does not exist.") in "CasanetBundle:Admin:deliverables.html.twig" at line 38.
Вот мой контроллер:
<?php
namespace ProjectB\CasanetBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
use ProjectB\CasanetBundle\Entity\Paper;
use ProjectB\CasanetBundle\Entity\Event;
use ProjectB\CasanetBundle\Entity\Conference;
use ProjectB\CasanetBundle\Entity\Project;
use ProjectB\CasanetBundle\Form\PaperType;
class AdminController extends Controller {
public function deliverablesAction() {
$em = $this->getDoctrine()->getManager();
$papers = $em->getRepository("CasanetBundle:Paper")->findAll();
$events = $em->getRepository("CasanetBundle:Event")->findAll();
$conferences = $em->getRepository("CasanetBundle:Conference")->findAll();
$projects = $em->getRepository("CasanetBundle:Project")->findAll();
return $this->render('CasanetBundle:Admin:deliverables.html.twig', array(
"papers" => $papers,
"events" => $events,
"conferences" => $conferences,
"projects" => $projects,
));
}
public function addpaperAction(Request $request){
$paper = new Paper();
$formPaper = $this->createForm(new PaperType(), $paper);
if($request->isMethod("POST")){
$formPaper->handleRequest($request);
if($formPaper->isValid()){
$em = $this->getDoctrine()->getManager();
$paper = $formPaper->getData();
$em->persist($paper);
$em->flush();
}
return $this->redirectToRoute("casanet_deliverablespage");
}
return $this->render('CasanetBundle:Admin:addpaper.html.twig', array(
"formPaper" => $formPaper->createView(),
));
}
}
Вот заинтересованный маршрут в моем файле routing.yml:
casanet_addpaperpage:
path: /admin/addpaper
defaults: { _controller: CasanetBundle:Admin:addpaper }
Я попытался очистить кэш, запустить обновления композитора, переименовать маршрут, проложить маршрут по другим путям и пока никаких результатов.
Может ли кто-нибудь намекнуть мне на правильный путь?
EDIT: Вот заинтересованный сегмент с моей точки зрения:
<a href="{{path("casanet_addpaperpage") }}" class="btn btn-primary">Add a paper</a>
Вы импортировали файл маршрутизации пакетов в 'config/routing.yml' и попробуйте' php app/console router: debug', чтобы просмотреть ваши маршруты и подтвердить, что маршрут существует. –
Он действительно появляется на консоли среди других маршрутов после запуска отладки маршрутизации, я полагаю, что она существует. – yahyaharif