我运行Symfony 3.1.5, PHP 7.0.12和composer 1.2.1。
有一个简单的实体:
<?php
namespace AppBundle'Entity;
use Doctrine'ORM'Mapping as ORM;
/**
* Class Event
* @package AppBundle'Entity
* @ORM|Entity
* @ORM|Table(name="event")
*/
class Event
{
/**
* @ORM|Column(type="integer")
* @ORM|Id
* @ORM|GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @ORM|Column(type="guid")
*/
private $uuid;
/**
* @ORM|Column(type="string", length=100)
*/
private $name;
/**
* @ORM|Column(type="text")
*/
private $description;
/**
* @ORM|Column(type="datetimetz")
*/
private $startDate;
/**
* @ORM|Column(type="datetimetz")
*/
private $endDate;
/**
* @ORM|Column(type="text")
*/
private $location;
}
文档说明我可以运行
php bin/console doctrine:generate:entities AppBundle/Entity/Event
以便为我的私有属性创建getter和setter。我在这里遇到了以下错误:
[Doctrine'Common'Annotations'AnnotationException]
[Semantical Error] The annotation "@Doctrine'ORM'Mapping" in class AppBundle'Entit
y'Event does not exist, or could not be auto-loaded.
由于注释作为别名@ORM
存在,我猜这是一个自动加载问题。
我搜索了一下,发现了一些链接到这个插件的旧帖子,这也不起作用。
所有的帖子似乎都与Doctrine'ORM'Mapping
类不是以常规方式自动加载的事实有关,而是需要单独加载。但是我找不到一个明确的指南来说明如何在主机上安装和运行它。你能帮帮我吗?
您应该用以下内容替换您的注释:
/**
* EntityName
*
* @ORM'Table(name="table_name")
* @ORM'Entity(repositoryClass="PATH TO REPO")
*/
用'代替|