Symfony 3:注释不存在,或者无法自动加载
Symfony 3 : The annotation does not exist, or could not be auto-loaded
当我将我的项目投入生产时,我得到了那个错误:
属性中的注释“@Symfony\Component\Validator\Constraints\type”不存在,或者无法自动加载。
我不明白为什么,因为我在本地工作时,一切正常。
这是我的代码:
namespace EC\UserBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use FOS\UserBundle\Model\User as BaseUser;
use Gedmo\Mapping\Annotation as Gedmo;
use Symfony\Component\Validator\Constraints as Assert;
use EC\ToolsBundle\StrTools\StrTools;
/**
* User
*
* @ORM\Table(name="user")
* @ORM\Entity(repositoryClass="EC\UserBundle\Repository\UserRepository")
*/
class User extends BaseUser
{
/**
* @ORM\Column(name="nb_recette", type="integer", options={"unsigned"=true, "default" = 0})
* @Assert\type(type="integer")
*/
private $nb_recette = 0;
//...
}
感谢您的帮助
你打错了,应该是@Assert\Type
Symfony 为自动加载实现了 PSR-4,所以如果你看一下 here 你会注意到
All class names MUST be referenced in a case-sensitive fashion.
尝试改变这个:
* @Assert\type(type="integer")
对此:
* @Assert\Type(type="integer")
注释区分大小写,因此您检索错误
当我将我的项目投入生产时,我得到了那个错误:
属性中的注释“@Symfony\Component\Validator\Constraints\type”不存在,或者无法自动加载。
我不明白为什么,因为我在本地工作时,一切正常。
这是我的代码:
namespace EC\UserBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use FOS\UserBundle\Model\User as BaseUser;
use Gedmo\Mapping\Annotation as Gedmo;
use Symfony\Component\Validator\Constraints as Assert;
use EC\ToolsBundle\StrTools\StrTools;
/**
* User
*
* @ORM\Table(name="user")
* @ORM\Entity(repositoryClass="EC\UserBundle\Repository\UserRepository")
*/
class User extends BaseUser
{
/**
* @ORM\Column(name="nb_recette", type="integer", options={"unsigned"=true, "default" = 0})
* @Assert\type(type="integer")
*/
private $nb_recette = 0;
//...
}
感谢您的帮助
你打错了,应该是@Assert\Type
Symfony 为自动加载实现了 PSR-4,所以如果你看一下 here 你会注意到
All class names MUST be referenced in a case-sensitive fashion.
尝试改变这个:
* @Assert\type(type="integer")
对此:
* @Assert\Type(type="integer")
注释区分大小写,因此您检索错误