教义 2.5。尝试手动生成代理时

doctrine orm:generate-proxies

抛出异常:



我定义了一个可以正常工作的自定义生成器:
/**
 * @ORM\Column(type="string")
 * @ORM\Id
 * @ORM\GeneratedValue(strategy="CUSTOM")
 * @ORM\CustomIdGenerator(class="MyBundle\MyCustomGenerator")
 */
protected $id;

此外,手动实例化生成器,例如
$a = new MyBundle\MyCustomGenerator();

作品。但出于某种原因,Doctrine 控制台会抛出上述异常。

我试图调试并检查发生了什么。
异常在 completeIdGeneratorMapping ClassMetadataFactory 中定义。我检查了 $definition['class'] 存储了我的自定义生成器的名称: MyBundle\MyCustomGenerator 。但是,Doctrine 仍然找不到该类。
以为我应该将定义添加到 cli-config.phpexplained in the doc ,使用 use MyBundleuse MyBundle\MyCustomGenerator ,但它不起作用 - 仍然抛出相同的异常。

任何想法我应该如何让 Doctrine 控制台知道我的自定义 ID 生成器?

最佳答案

不确定它会有所帮助或仍然需要帮助,但试试这个

@ORM\CustomIdGenerator(class="\MyBundle\MyCustomGenerator")

即在类定义中添加起始斜杠

关于php - 教义 orm :generate-proxies throwing "Can' t instantiate custom generator",我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32032999/

10-14 13:25