1

尝试进入管理仪表板时出现以下错误:

无法导入资源“/var/www/autoportal/app/config/。” 来自“/var/www/autoportal/app/config/routing.yml”。(自动加载器期望类“App\AdminBundle\Admin\AutoAdmin”在文件“/var/www/autoportal/src/App/AdminBundle/Admin/AutoAdmin.php”中定义。找到该文件但该类不在它,类名或命名空间可能有错字。)

我的管理类:

namespace App\AdminBundle\Admin;

use Sonata\AdminBundle\Admin\Admin;
use Sonata\AdminBundle\Datagrid\ListMapper;
use Sonata\AdminBundle\Datagrid\DatagridMapper;
use Sonata\AdminBundle\Form\FormMapper;

class AutoAdmin extends Admin
{
    protected function configureFormFields(FormMapper $formMapper)
    {
        $formMapper
            ->add('name')
            ->add('enabled', null, array('required' => false))
        ;
    }

    protected function configureDatagridFilters(DatagridMapper $datagridMapper)
    {
        $datagridMapper
            ->add('name')
            ->add('posts')
        ;
    }

    protected function configureListFields(ListMapper $listMapper)
    {
        $listMapper
            ->addIdentifier('name')
            ->add('slug')
            ->add('enabled')
        ;
    }
}

服务配置:

services:
    app_admin.auto:
        class: App\AdminBundle\Admin\AutoAdmin
        tags:
            - { name: sonata.admin, manager_type: orm, group: posts, label: "Auto" }
        arguments:
            - ~
            - 'App\AutoPortalBundle\Entity\Auto'
            - 'SonataAdminBundle:CRUD'
        calls:
            - [ setTranslationDomain, [AppAdminBundle]]

路由文件:

app_auto_portal_controller:
    resource: "@AppAutoPortalBundle/Controller"
    type:     annotation

app_auto_portal:
    resource: "@AppAutoPortalBundle/Resources/config/routing.yml"
    prefix:   /

login:
    pattern:   /login
    defaults:  { _controller: AppAutoPortalBundle:Security:login }
login_check:
    pattern:   /login_check

admin:
    resource: '@SonataAdminBundle/Resources/config/routing/sonata_admin.xml'
    prefix: /admin

_sonata_admin:
    resource: .
    type: sonata_admin
    prefix: /admin
4

0 回答 0