我正在用symfony2创建一个非常基本的静态页面,但是我没有收到路由发现错误,并且我已经为我的页面定义了路由。
我的控制器
#src/IDP/IDPBundle/Controller/PortfolioController.php
<?php
namespace IDP\IDPBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
class PortfolioController extends Controller
{
public function indexAction()
{
return $this->render('IDPIDPBundle:Portfolio:index.twig');
}
}我的routing.yml文件
#src/IDP/IDPBundle/resources/config/routing.yml
IDPIDPBundle_portfolio:
pattern: /portfolio
defaults: { _controller: IDPIDPBundle:Portfolio:index }
requirements:
_method: GET我在app中的路由文件
#app/config/routing.yml
IDPIDPBundle:
resource: "@IDPIDPBundle/Resources/config/routing.yml"
prefix: /
# Internal routing configuration to handle ESI
#_internal:
# resource: "@FrameworkBundle/Resources/config/routing/internal.xml"
# prefix: /_internal当我在浏览器中尝试这个url时,symfony欢迎页面出现
http://project.dev/app_dev.php/但当我尝试的时候
http://project.dev/app_dev.php/portfolio它不会给出发现路由错误
我在这里做错了什么?
有什么想法吗?
发布于 2012-05-20 21:25:45
确保您所做的更改在项目的根目录中受到影响,而不仅仅是在eclipse的工作空间中。将eclipse工作空间更改为项目根目录,然后
IDPIDPBundle:
resource: "@IDPIDPBundle/Resources/config/routing.yml"
prefix: /
IDPIDPBundle_portfolio:
pattern: /portfolio
defaults: { _controller: IDPIDPBundle:Portfolio:index }
requirements:
_method: GET希望能有所帮助
发布于 2012-05-20 19:02:14
我认为你的代码和路由是正确的。但是输入的url不正确。您没有指向app_dev.php所在的web文件夹。也许这就是你的问题。
尝试使用以下url而不是此url http://project.dev/app_dev.php/portfolio
http://project.dev/web/app_dev.php/portfolio希望project.dev是您的项目文件夹。
第二件事,我注意到你必须真正关心routing.yml文件的缩进。
IDPIDPBundle:
resource: "@IDPIDPBundle/Resources/config/routing.yml"
prefix: /
IDPIDPBundle_portfolio:
pattern: /portfolio
defaults: { _controller: IDPIDPBundle:Portfolio:index }
requirements:
_method: GET希望这能有所帮助。
https://stackoverflow.com/questions/10654798
复制相似问题