Symfony2> MappingException:Class ... \ Entity \ User不存在

时间:2013-10-30 19:42:40

标签: php symfony

我正在尝试从数据库中进行用户身份验证。我已经按照食谱中的说明设置了一个用户实体。我的包已在appKernel中注册,我之前使用过该包。唯一改变的是新的Entity \ User.php和security.yml中的更改。我确信这是愚蠢的事,但对于我的生活,我无法弄清楚我做错了什么。当我执行cache:clear时,我得到以下内容:

enter image description here

浏览app_dev.php时:

enter image description here

从app \ src \ MyFreelancer \ PortalBundle \ Entity \ User.php中提取

<?php
namespace MyFreelancer\PortalBundle\Entity;

use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections\Criteria;
use Doctrine\Common\Collections\ArrayCollection;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
use Symfony\Component\Validator\Constraints as Assert;
use JMS\Serializer\Annotation as Ser;
use Gedmo\Mapping\Annotation as Gedmo;

use Symfony\Component\Security\Core\User\Role;
use Symfony\Component\Security\Core\User\AdvancedUserInterface;

/**
 * User
 *
 * @ORM\Entity
 * @ORM\Table(name="users")
 * @Ser\ExclusionPolicy("all")
 */
class User implements AdvancedUserInterface, \Serializable
{
    /**
    * @var integer
    *
    * @ORM\Column(name="id", type="integer")
    * @ORM\Id
    * @ORM\GeneratedValue(strategy="AUTO")
    * @Ser\Expose
    */
    private $id;
...

从security.yml中提取(导致问题):

    providers:
    main:
        entity:
            class: MyFreelancer\PortalBundle\Entity\User,
            property: username

如您所见,实体存在于正确的文件结构中,命名空间在实体文件中定义,类被定义为实体并且Bundle已注册。我不知道我错过了什么。

1 个答案:

答案 0 :(得分:1)

根据jperovic的评论,这只是从security.yml中删除','的情况。真是愚蠢的错误,我只是没有接受。