时间:2021-07-01 10:21:17 帮助过:2人阅读
配置步骤如下:
1.在app/AppKernel.php文件中加入代码:
public function registerBundles() {
$bundles[] = new Acme\HelloBundle\AcmeHelloBundle();
return $bundles;
}
2.app/config/routing.yml
acme_hello:
resource: "@AcmeHelloBundle/Resources/config/routing.yml"
prefix: /
3.src/Acme/HelloBundle/Resources/config/routing.yml
hello:
pattern: /hello/{name}
defaults: { _controller: AcmeHelloBundle:Hello:index }
4.src/Acme/HelloBundle/Controller/HelloController.php
namespace Acme\HelloBundle\Controller;
use Symfony\Component\HttpFoundation\Response;
class HelloController
{
public function indexAction()
{
return new Response("Hello World");
}
}
我几乎按照文档的步骤来做了,但还是出现了一些问题:
Cannot import resource "D:/xampp/htdocs/Symfony/app/config\routing.yml" from "D:/xampp/htdocs/Symfony/app/config/routing_dev.yml". (Unable to parse at line 2 (near "resource:"@AcmeHelloBundle/Resources/config/routing.yml"").)
文档上写到执行一个命令行可以创建一个新的bundle,并在src/Acme目录下生成新的bundle目录,我的执行如下:
D:\xampp\php>php d:\xampp\htdocs\Symfony\app\console --namespace=Acme/HelloBundle --format=yml
不见有任何效果,所以就自己手动创建了
我想添加一个页面,访问链接为/hello
配置步骤如下:
1.在app/AppKernel.php文件中加入代码:
public function registerBundles() {
$bundles[] = new Acme\HelloBundle\AcmeHelloBundle();
return $bundles;
}
2.app/config/routing.yml
acme_hello:
resource: "@AcmeHelloBundle/Resources/config/routing.yml"
prefix: /
3.src/Acme/HelloBundle/Resources/config/routing.yml
hello:
pattern: /hello/{name}
defaults: { _controller: AcmeHelloBundle:Hello:index }
4.src/Acme/HelloBundle/Controller/HelloController.php
namespace Acme\HelloBundle\Controller;
use Symfony\Component\HttpFoundation\Response;
class HelloController
{
public function indexAction()
{
return new Response("Hello World");
}
}
我几乎按照文档的步骤来做了,但还是出现了一些问题:
Cannot import resource "D:/xampp/htdocs/Symfony/app/config\routing.yml" from "D:/xampp/htdocs/Symfony/app/config/routing_dev.yml". (Unable to parse at line 2 (near "resource:"@AcmeHelloBundle/Resources/config/routing.yml"").)
文档上写到执行一个命令行可以创建一个新的bundle,并在src/Acme目录下生成新的bundle目录,我的执行如下:
D:\xampp\php>php d:\xampp\htdocs\Symfony\app\console --namespace=Acme/HelloBundle --format=yml
不见有任何效果,所以就自己手动创建了
我曾经遇到过因为用tab导致yml解析错误的问题。第一个问题应该是文件格式不对。 第二个问题你光加namespace没用的。console里应该是create:bundle命令后面带namespace和format才好用。
从错误信息判断,应该是@AcmeHelloBundle/Resources/config/routing.yml这个文件里yaml语法不对,看看是不是缩进或者敲了非英文的空格之类的问题。