Doctrine返回Undefined变量:metadata错误

时间:2018-02-16 21:03:07

标签: php symfony doctrine-orm doctrine php-7.2

我正在尝试使用Doctrine生成用于新应用程序的实体。我之前使用过Doctrine,从来没有遇到过这个问题,而且我似乎找不到为什么在网上发生这种情况的答案。 我目前在Ubuntu 17.10上使用PHP-7.2和Doctrine版本doctrine/orm: ^2.5运行它。

php vendor/bin/doctrine orm:convert-mapping --from-database php models/mapping

然后在制作映射文件后,它看起来像这样:

<?php

use Doctrine\ORM\Mapping\ClassMetadataInfo;

$metadata->setInheritanceType(ClassMetadataInfo::INHERITANCE_TYPE_NONE);
$metadata->setPrimaryTable(array(
   'name' => 'subscriptions',
  ));
$metadata->setChangeTrackingPolicy(ClassMetadataInfo::CHANGETRACKING_DEFERRED_IMPLICIT);
$metadata->mapField(array(
   'fieldName' => 'id',
   'columnName' => 'id',
   'type' => 'integer',
   'nullable' => false,
   'options' => 
   array(
   'unsigned' => false,
   ),
   'id' => true,
  ));
$metadata->mapField(array(
   'fieldName' => 'site',
   'columnName' => 'site',
   'type' => 'string',
   'nullable' => false,
   'length' => 25,
   'options' => 
   array(
   'fixed' => false,
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'endpoint',
   'columnName' => 'endpoint',
   'type' => 'string',
   'nullable' => false,
   'length' => 45,
   'options' => 
   array(
   'fixed' => false,
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'userpublickey',
   'columnName' => 'userPublicKey',
   'type' => 'string',
   'nullable' => false,
   'length' => 255,
   'options' => 
   array(
   'fixed' => false,
   ),
  ));
$metadata->mapField(array(
   'fieldName' => 'userauthtoken',
   'columnName' => 'userAuthToken',
   'type' => 'string',
   'nullable' => false,
   'length' => 255,
   'options' => 
   array(
   'fixed' => false,
   ),
  ));
$metadata->setIdGeneratorType(ClassMetadataInfo::GENERATOR_TYPE_IDENTITY);

然后我尝试运行此命令:

php vendor/bin/doctrine orm:generate-entities --generate-annotations=true models/entities

我收到一条错误声明:

PHP Notice:  Undefined variable: metadata

有谁知道为什么Doctrine会生成一个具有未定义变量的映射,以及我要做些什么来修复它?

0 个答案:

没有答案