【问题标题】:Cannot import resource Symfony error无法导入资源 Symfony 错误
【发布时间】:2013-03-14 05:01:41
【问题描述】:

我已经创建了简单的控制器,设置了路由并且一切正常,直到我为第三个链接添加路由。然后我得到一个错误

无法从“C:/xampp/htdocs/Symfony/app/config\routing.yml”导入资源“C:\xampp\htdocs\Symfony\src\Acme\Bundle\WebBundle/Resources/config/routing.yml” ”。

DefaultController.php:

<?php

namespace Acme\Bundle\WebBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;

class DefaultController extends Controller
{
public function indexAction()
{
    return $this->render('AcmeWebBundle:Default:index.html.twig');
}


//* find a ride *//

public function findAction()
{

    return $this->render('AcmeWebBundle:Default:find.html.twig');

}

//*book a ride *//

public function bookAction()
 {

    return $this->render('AcmeWebBundle:Default:book.html.twig');
  }
}

这是master.html.twig 的一部分,其中是简单导航。

  ...
   <div id="left1"><a href="{{ path('acme_web_homepage') }}"><strong>Home</strong></a>
     </div>
     <div id="left2">
     </div>
     <div id="left3"><a href="{{ path('find') }}"><strong>Find a ride</strong></a>
     </div>
     <div id="left4">
     </div>
     <div id="left5"><a href="{{ path('book') }}"><strong>Book a ride</strong></a>
     </div>

还有routing.yml 文件

acme_web_homepage:
    pattern:  /home
    defaults: { _controller: AcmeWebBundle:Default:index }

find:
    pattern: /find
    defaults: { _controller: AcmeWebBundle:Default:find }
book:
    pattern: /book
    defaults: { _controller: AcmeWebBundle:Default:book }

如果我删除书籍路径的路线,一切正常。我哪里错了?

【问题讨论】:

    标签: php symfony


    【解决方案1】:

    Yaml 基于缩进。您必须将book 的所有属性缩进一些空格(我推荐4 个空格):

    book:
        pattern: /book
        defaults: { _controller: AcmeWebBundle:Default:book }
    

    the documentation 中有关 Yaml 格式的更多信息。

    【讨论】:

    • 感谢您的回答 Wouter。但是,我已经完成了您的建议,但仍然没有运气:/
    【解决方案2】:

    yml 文件必须缩进 4 个空格。

    book:
        pattern: /book
        defaults: { _controller: AcmeWebBundle:Default:book }
    

    【讨论】:

      【解决方案3】:

      我终于知道问题出在哪里了:

      按下标签按钮后,我留下了空间。无论这听起来多么奇怪,我都会用@Wouter建议的4个空格替换它,一切正常。

      下次使用 yml 文件时忘记选项卡。

      【讨论】:

        【解决方案4】:

        我在导入过程中注意到一些奇怪的 Symfony 行为。当在 config/services.yaml 文件中定义服务时,它们会正确加载,但是当我在 config/services/services.yaml 中配置它们时,(从 config/services.yaml 导入后)它们开始出现类似

        的错误

        无法自动连接服务“App\Command***\XyzCommand”:方法“__construct()”的参数“$env”是类型提示的“字符串”,您应该配置它
        明确的价值。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2016-06-12
          • 1970-01-01
          • 2013-01-10
          • 1970-01-01
          • 2015-09-09
          • 1970-01-01
          • 2013-02-19
          相关资源
          最近更新 更多