将
doctrine/doctrine-fixtures-bundle
更新到 v3.7.0 后,我在尝试加载灯具时收到此错误:
在 AbstractFixture.php 第 78 行:
函数 Doctrine\Common\DataFixtures\AbstractFixture::getReference() 的参数太少,传入了 1 个...而预期正好有 2 个
请参阅下面我自己的答案。
在报告的行中,将第二个参数添加到
getReference()
,其中包含引用对象的类(即不是Fixtures类),例如:
$this->getReference('testuser', User::class);
该更改在 https://github.com/doctrine/data-fixtures/pull/464 中引入,并于
doctrine/data-fixtures 2.0.0
中发布
doctrine/doctrine-fixtures-bundle 3.7.0
添加了对 doctrine/data-fixtures 2.0.0
的支持。
因此,如果您的
doctrine/data-fixtures
中没有明确提及 composer.json
,您会自动升级到 v2.0.0。
因此,为了防止将来出现此类意外,请将其添加到您的
composer.json
:
"doctrine/data-fixtures": "^2.0",