Symfony 3.3.10路线

时间:2017-10-06 14:07:18

标签: symfony-3.3

我尝试使用路线时遇到问题。它无法生成,我通过/app/config/routes.xml尝试但是当我修改时我得到错误,该文件不是YAML格式。

控制器看起来:

    use Symfony\Bundle\FrameworkBundle\Controller\Controller;
    use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
    use Symfony\Component\HttpFoundation\Request;

   class MainController extends Controller
   {
   public function indexAction(Request $request)
   {
    return $this->render('main/index.html.twig', [
        'base_dir' => realpath($this->getParameter('kernel.project_dir')).DIRECTORY_SEPARATOR,
    ]);
}
}

当我尝试访问/索引或主要/索引时,它给我找不到路线! :@

当我使用Sensio \ Bundle \ FrameworkExtraBundle \ Configuration \ Route时也不起作用;首先在Controller之前。

1 个答案:

答案 0 :(得分:0)

  • 首先,您必须将名称空间放在标题上。

  • Symfony 3.3.10中的第二个你要使用的路由必须在公共函数indexAction之前声明。

因此,您的路线声明如下:

namespace AppBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Request;

class MainController extends Controller
{
    /**
    *@Route("visit/index")
    */
    public function indexAction(Request $request)
    {


        return $this->render('main/index.html.twig', ['base_dir' => realpath($this->getParameter('kernel.project_dir')).DIRECTORY_SEPARATOR,]);

    }
}