![](/img/trans.png)
[英]Symfony 2: route defined in annotation not visible from by Twig's path()
[英]Set href path on twig with annotation route on symfony
我正在使用注釋路由,必須設置href路徑,但收到此消息
An exception has been thrown during the rendering of a template ("Unable to generate a URL for the named route "crear" as such route does not exist.") in menu.html.twig at line 20.
這是第20行的menu.html.twig
<li><a href="{{ path('crear') }}">Crear</a></li>
這是控制器
<?php
namespace UserBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Response;
use UserBundle\Entity\User;
use \DateTime;
class DefaultController extends Controller
{
/**
* @Route("/")
*/
public function indexAction()
{
/*$user = new User();
$user->setUsername("usuario2");
$user->setFirstName("aaa");
$user->setLastName("bb");
$user->setEmail("bbb@mail.com");
$user->setPassword("123456");
$user->setRole('ROLE_ADMIN');
$user->setIsActive(true);
$user->setCreatedAt(new DateTime());
$user->setUpdatedAt(new DateTime());
$em = $this->getDoctrine()->getManager();
$em->persist($user);
$em->flush();*/
return $this->render('UserBundle:Default:index.html.twig');
//return new Response(phpinfo());
}
/**
*@Route("/ver")
*/
public function viewAction(){
$repository = $this->getDoctrine()->getRepository('UserBundle:User');
$users = $repository->findAll();
//return new Response($user->getEmail());
return $this->render('UserBundle:User:view.html.twig',array('users'=>$users ));
}
/**
*@Route("/crear")
*/
public function createAction(){
return new Response("Crear");
}
}
和routing.yml
user:
resource: "@UserBundle/Controller/"
type: annotation
prefix: /
app:
resource: "@AppBundle/Controller/"
type: annotation
我必須激活某些路線或必須做什么?
您需要為路徑指定一個名稱,以便通過樹枝生成,因此請按如下所示更改控制器注釋:
/**
*@Route("/crear", name="crear")
*/
public function createAction(){
return new Response("Crear");
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.