我们有很多学说模型(~100),我们在查询某些表时会看到这个错误:
注意:未定义的索引:第125行的vendor / doctrine / common / lib / Doctrine / Common / Proxy / AbstractProxyFactory.php中的id
我在该文件中添加了一些回声,它似乎指向一个名为Actor.php的模型:
来自AbstractProxyFactory:
foreach ($definition->identifierFields as $idField) {
echo $className . "\n";
echo $fqcn . "\n";
print_r($identifier);
var_dump($definition);
$definition->reflectionFields[$idField]->setValue($proxy, $identifier[$idField]);
}
记录输出:
Model\Actor
Proxy\..\Model\Actor
Array ( [actorId] => 204011809623315 )
...
object(Doctrine\Common\Proxy\ProxyDefinition)[336]
public 'proxyClassName' => string 'Proxy\..\Model\Actor' (length=58)
public 'identifierFields' =>
array (size=1)
0 => string 'id' (length=2)
...
据我所知,这门课没什么问题。它包含一个' id'领域,但我不确定它有什么问题?
/**
* @Id
* @Column(type="integer", name="fda_id")
* @var int
*/
protected $id = null;
对我来说,似乎' id'是否正确定义?
有趣的是,如果我将字段名称更改为' fda_id',则通知会抱怨&f; fda_id'的未定义索引。代替。我认为它可能是一个缺少的主键索引,但我已经证实情况并非如此。