2016-01-21 47 views
1

我試圖在我的symfony項目安裝sonataAdminBundle,這裏是我的composer.json文件SonataDoctrineORMAdminExtension.php

上午以下https://sonata-project.org/bundles/admin/2-3/doc/getting_started/installation.html

"sonata-project/admin-bundle": "~2.0", 
    "sonata-project/doctrine-orm-admin-bundle": "2.2.x-dev" 

我把這個在我的appkernel文件

 new Sonata\CoreBundle\SonataCoreBundle(), 
     new Sonata\BlockBundle\SonataBlockBundle(), 
     new Knp\Bundle\MenuBundle\KnpMenuBundle(), 
     new Sonata\AdminBundle\SonataAdminBundle(), 
     new Sonata\DoctrineORMAdminBundle\SonataDoctrineORMAdminBundle(), 

在我的config.yml文件中 sonata_block: default_contexts: [cms] blocks: sonata.admin.block.admin_list: contexts: [admin] 我有這個issus

ClassNotFoundException in SonataDoctrineORMAdminExtension.php line 29: Attempted to load class "AbstractSonataAdminExtension" from namespace "Sonata\AdminBundle\DependencyInjection". Did you forget a "use" statement for another namespace?

回答

0

這是一個作曲家問題 - 由Composer生成的一組依賴關係導致了這個bug。截至本文發稿時,Symfony的長期支持版本爲2.8.3。這裏的設置工作,我得到這個版本的Symfony與索納塔管理員運行命令的命令:

  1. 安裝的Symfony:

    $ symfony new my_project_name lts 
    
  2. 降級Sensio公司發生器管束到2.3版本:

    $ composer require sensio/generator-bundle "2.3.*" 
    
  3. 安裝索納塔管理軟件包及其依賴項:

    $ composer require sonata-project/admin-bundle "2.3.*" 
    $ composer require sonata-project/doctrine-orm-admin-bundle "2.3.*" 
    $ composer require sonata-project/jquery-bundle 
    
    • 對於jquery-bundle,您可能會看到錯誤:The child node "default_contexts" at path "sonata_block" must be configured.如果您看到它,請轉到下一步。當您完成下一步時,請嘗試再次安裝jquery-bundle。
  4. 在索納塔管理員安裝文檔here描述做其他的步驟:在app/AppKernel.php註冊安裝包,改變app/config/config.ymlapp/config/routing.yml,清除緩存,並安裝資產。

之後,你應該可以運行該應用程序。