也许我只是用命名空间搞砸了一些东西,但我没有看到它。
我试图将我的 Symfony 应用程序中的一些类分成一个包。
我在 Symfony 中遇到的错误是:
从资源 "../bundles/Shop/src/ *”,但是没有找到!检查与 C:\wamp64\www\gall\config/services.yaml 中的资源一起使用的命名空间前缀(在资源“C:\wamp64\www\gall\config/services.yaml”中加载)。
这是我的 services.yaml:
Shop\:
resource: '../bundles/Shop/src/*'
exclude: '../bundles/Shop/src/{Entity,Migrations,Tests}'
Shop\Controller\:
resource: '../bundles/Shop/src/Controller'
tags: ['controller.service_arguments']
文件结构如下:
project (C:\wamp64\www\gall)
\- bundles
\- Shop
\- src
\- Admin
\- CategoryAdmin.php
\- config
\- services.yaml
CategoryAdmin.php 文件本身如下所示:
namespace Shop\Admin;
use Shop\Entity\Category;
use Sonata\AdminBundle\Admin\AbstractAdmin;
use Sonata\AdminBundle\Datagrid\ListMapper;
use Sonata\AdminBundle\Datagrid\DatagridMapper;
use Sonata\AdminBundle\Form\FormMapper;
use Symfony\Bridge\Doctrine\Form\Type\EntityType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\Extension\Core\Type\CheckboxType;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Sonata\TranslationBundle\Filter\TranslationFieldFilter;
/**
* Class CategoryAdmin
* @package Shop\Admin
*/
class CategoryAdmin extends AbstractAdmin
{
{...}
}
所以,路线看起来与错误中所述的完全一样。我不明白为什么 FileLoader 找不到这个类,有什么想法吗?