2

バージョンでFOSRestful例を試していますが、次のエラーが発生していますSymfony 2

「/Library/WebServer/Documents/symfony/app/config/routing_dev.yml」からリソース「@AcmeDemoBundle/Controller/UsersController」をインポートできません。「AcmeDemoBundle」バンドルが正しく登録され、アプリケーション カーネル クラスにロードされていることを確認します。

私はそれに慣れていないので、FOSRestfulBundle が適切にインストールされているかどうかわからないので、ここにすべての手順を投稿しています。

今まで私はセットアップするために次のことをしました

1. のAppKernel.php

 new JMS\SerializerBundle\JMSSerializerBundle(),
 new FOS\RestBundle\FOSRestBundle(),

2. composer.json で

"jms/serializer-bundle": "dev-master",
"friendsofsymfony/rest-bundle": "dev-master"

3. config.yml で

fos_rest:
    routing_loader:
        default_format: json

4 . routing_dev.yml で

users:
    type:     rest
    resource: "@AcmeDemoBundle/Controller/UsersController"    
    prefix: /users

5. 以下は、UsersController 内部にある の内容ですAcme/DemoBundle/Controller

<?php



namespace Acme\DemoBundle\Controller;

use Acme\DemoBundle\Model\User;
use Acme\DemoBundle\Model\UserQuery;
use FOS\RestBundle\Controller\Annotations as Rest;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;

class UsersController
{
    /**
     * @Rest\View
     */
    public function allAction()
    {
        $users = UserQuery::create()->find();

        return array('users' => $users);
    }

    /**
     * @Rest\View
     */
    public function getAction($id)
    {
        $user = UserQuery::create()->findPk($id);

        if (!$user instanceof User) {
            throw new NotFoundHttpException('User not found');
        }

        return array('user' => $user);
    }
}


?>

6.composer.json

{
    "name": "symfony/framework-standard-edition",
    "description": "The \"Symfony Standard Edition\" distribution",
    "autoload": {
        "psr-0": { "": "src/" }
    },
    "require": {
        "php": ">=5.3.3",
        "symfony/symfony": "2.2.*",
        "doctrine/orm": "~2.2,>=2.2.3",
        "doctrine/doctrine-bundle": "1.2.*",
        "twig/extensions": "1.0.*",
        "symfony/assetic-bundle": "2.1.*",
        "symfony/swiftmailer-bundle": "2.2.*",
        "symfony/monolog-bundle": "2.2.*",
        "sensio/distribution-bundle": "2.2.*",
        "sensio/framework-extra-bundle": "2.2.*",
        "sensio/generator-bundle": "2.2.*",
        "jms/security-extra-bundle": "1.4.*",
        "jms/di-extra-bundle": "1.3.*",
        "jms/serializer-bundle": "dev-master",
        "friendsofsymfony/rest-bundle": "dev-master"


    },
    "scripts": {
        "post-install-cmd": [
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
        ],
        "post-update-cmd": [
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::buildBootstrap",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::clearCache",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installAssets",
            "Sensio\\Bundle\\DistributionBundle\\Composer\\ScriptHandler::installRequirementsFile"
        ]
    },
    "config": {
        "bin-dir": "bin"
    },
    "minimum-stability": "alpha",
    "extra": {
        "symfony-app-dir": "app",
        "symfony-web-dir": "web",
        "branch-alias": {
            "dev-master": "2.2-dev"
        }
    }


}
4

1 に答える 1

0

.phpに拡張子を追加して解決しUsersControllerましたrouting_dev.yml

正しい入力ができるように

resource: "@AcmeDemoBundle/Controller/UsersController.php"    
于 2013-04-15T16:55:18.690 に答える