我正在尝试创建一个捆绑包,其中所有实体都是可替换/可扩展的,并且遇到了以下两个页面:
现在,我正在尝试将其第一次投入实践,并创建了这个简单的测试:
在捆绑包中,我为Country实体创建了一个接口
Jackson2JsonMessageConverter
然后,我创建了实体本身
namespace My\Custom\Bundle\Entity;
interface CountryInterface
{
/**
* @return string|null
*/
public function getIsoCode(): ?string;
}
在我的应用程序中,我尝试使用此方法扩展实体:
namespace My\Custom\Bundle\Entity;
/**
* @ORM\Entity()
*/
class Country implements CountryInterface
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string|null
* @ORM\Column(type="string", nullable=true)
*/
private $isoCode;
// getters/setters
}
然后我将其添加到我的配置中:
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
use My\Custom\Bundle\Entity\Country as BaseCountry;
/**
* @ORM\Entity()
*/
class Country extends BaseCountry
{
/**
* @var string
* @ORM\Column(type="string", nullable=true)
*/
protected $name;
}
但是在进行doctrine:
orm:
resolve_target_entities:
My\Custom\Bundle\CountryInterface: App\Entity\Country
时,我总是会收到一条错误消息,说doctrine:migrations:diff
我在做什么错?