Php Symfony-简单@Route doens';似乎没有如预期的那样工作
我刚开始使用Symfony,所以我正在尝试学习路由。因此,根据有关的官方文件,我制作了一个简单的页面,如下所示:Php Symfony-简单@Route doens';似乎没有如预期的那样工作,php,symfony,Php,Symfony,我刚开始使用Symfony,所以我正在尝试学习路由。因此,根据有关的官方文件,我制作了一个简单的页面,如下所示: <?php // src/AppBundle/Controller/MainController.php namespace AppBundle\Controller; use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route; use Symfony\Component\HttpFoundation\Respons
<?php
// src/AppBundle/Controller/MainController.php
namespace AppBundle\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
class MainController extends Controller
{
/**
* @Route("/index", name="Players lister")
*/
public function renderFirstPage()
{
return $this->render('accounts.html.twig');
}
/**
* @Route("/index/{account}", name="Players lister")
*/
public function getPlayersList($account)
{
$players = array("Player1", "Player2");
return $this->render('accounts.html.twig', array(
'account' => $account,
'players' => $players
));
}
}
?>
但是当我在http://localhost:8000/app_dev.php/index
I get未找到用于“get/index”的路由
,而第二条路由工作正常。相反,如果我删除第二条路由,第一条路由就可以工作
我做错了什么?在组件中注册的每个路由都应该具有唯一的URI和名称
每个路线也有一个内部名称:blog_list和blog_show。它们可以是任何东西(只要每个都是唯一的),并且还没有任何意义。稍后,您将使用它生成URL
在组件中注册的每个路由都应该具有唯一的URI和名称
每个路线也有一个内部名称:blog_list和blog_show。它们可以是任何东西(只要每个都是唯一的),并且还没有任何意义。稍后,您将使用它生成URL
路由路径和名称应为uniq
/**
* @Route("/", name="home")
*/
public function renderFirstPage()
{
return $this->render('accounts.html.twig');
}
/**
* @Route("/index/{account}", name=players_lister")
*/
public function getPlayersList($account)
{
$players = array("Player1", "Player2");
return $this->render('accounts.html.twig', array(
'account' => $account,
'players' => $players
));
}
路由路径和名称应为uniq
/**
* @Route("/", name="home")
*/
public function renderFirstPage()
{
return $this->render('accounts.html.twig');
}
/**
* @Route("/index/{account}", name=players_lister")
*/
public function getPlayersList($account)
{
$players = array("Player1", "Player2");
return $this->render('accounts.html.twig', array(
'account' => $account,
'players' => $players
));
}
路由按名称按查找顺序编制索引。因此,由于您的两条路线具有相同的名称,因此第二条路线将覆盖第一条路线。为路由指定唯一的名称,它应按预期工作。路由按名称按查找顺序编制索引。因此,由于您的两条路线具有相同的名称,因此第二条路线将覆盖第一条路线。为路由指定唯一的名称,它应按预期工作。