首页 > 解决方案 > 语义错误从未导入类 App\Entity\User\AdminUser 中的注释“@MappedSuperclass”

问题描述

您好,我尝试为 sylius 安装 RbacPlugin,我按步骤执行,但出现错误。我有这个错误


[语义错误]从未导入类 App\Entity\User\AdminUser 中的注释“@MappedSuperclass” 。
您是否可能忘记为此注释 添加“使用”语句?

管理员用户.php

<?php

declare(strict_types=1);

namespace App\Entity\User;

use Doctrine\ORM\Mapping\Entity;
use Doctrine\ORM\Mapping\Table;
use Sylius\Component\Core\Model\AdminUser as BaseAdminUser;
use Sylius\RbacPlugin\Entity\AdministrationRoleAwareInterface;
use Sylius\RbacPlugin\Entity\AdministrationRoleAwareTrait;

/**
 * @MappedSuperclass
 * @Table(name="sylius_admin_user")
 */
class AdminUser extends BaseAdminUser implements AdministrationRoleAwareInterface
{
    use AdministrationRoleAwareTrait;
}

配置/_sylius.yaml

sylius_user:
    resources:
        admin:
            user:
                classes:
                    model: App\Entity\AdminUser

路线/sylius_rbac.yaml

sylius_rbac:
    resource: "@SyliusRbacPlugin/Resources/config/routing.yml"

配置/包/sylius_rbac.yaml

imports:
    - { resource: "@SyliusRbacPlugin/Resources/config/config.yml" }

它在第 6 步需要迁移时,我能做些什么来离开这个?

标签: syliussylius-1.3

解决方案


添加这个:

use Doctrine\ORM\Mapping\MappedSuperclass; 

声明(严格类型=1);

命名空间应用\实体\用户;

使用 Doctrine\ORM\Mapping\Entity;

使用 Doctrine\ORM\Mapping\Table;

使用 Sylius\Component\Core\Model\AdminUser 作为 BaseAdminUser;

使用 Sylius\RbacPlugin\Entity\AdministrationRoleAwareInterface;

使用 Sylius\RbacPlugin\Entity\AdministrationRoleAwareTrait;

使用 Doctrine\ORM\Mapping\MappedSuperclass;


推荐阅读