找不到'FOS \ UserBundle \ FOSUserBundle'

时间:2014-08-11 05:56:55

标签: php fosuserbundle symfony-2.5

在symfony 2.5中我想使用FOSUserBundle,我在github中执行任何步骤

当尝试更新架构时会看到此错误

Fatal error: Class 'FOS\UserBundle\FOSUserBundle' not found in /opt/lampp/htdocs/symfonyTest/app/AppKernel.php on line 23

FOSUserBundle位于vendor / friendsofsymfony / user-bundle / FOS中 这是我的AppKernel

$bundles = array(
        //... other bundles
        new FOS\UserBundle\FOSUserBundle(),

    );

和我的app / config / config.yml

fos_user:
db_driver: orm # other valid values are 'mongodb', 'couchdb' and 'propel'
firewall_name: main
user_class: Acme\StoreBundle\Entity\User

我的app / config / security.yml

security:
encoders:
    FOS\UserBundle\Model\UserInterface: sha512

role_hierarchy:
    ROLE_ADMIN:       ROLE_USER
    ROLE_SUPER_ADMIN: ROLE_ADMIN

providers:
    fos_userbundle:
        id: fos_user.user_provider.username

firewalls:
    main:
        pattern: ^/
        form_login:
            provider: fos_userbundle
            csrf_provider: form.csrf_provider
        logout:       true
        anonymous:    true

access_control:
    - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/admin/, role: ROLE_ADMIN }

1 个答案:

答案 0 :(得分:0)

Symfony依靠Composers自动加载器使所有“必需”供应商可用。如果您还没有这样做,请将以下内容添加到您的composer.json文件中:

"require": {
    "friendsofsymfony/user-bundle": "~2.0@dev"
    ...
}

然后从项目根目录运行以下命令(假设您使用的是composer.phar):

php composer.phar install

执行此操作将更新使用的自动加载器,并允许您在应用程序中使用FOSUserBundle。