3

このようなアイテムをsrc/Acme / AdminBundle / Entity /Artist.orm.ymlに追加したい:

email:
  type: string
  column: email_address
  length: 150

しかし、私はファイルAcme / AdminBundle / Entity/Artistで同じことをすることを余儀なくされています

/**
 * @var string $email
 */
private $email;

そうしないと、スキーマを更新するとエラーが表示されます。

php app/console doctrine:schema:update --force

[Doctrine \ ORM \ Mapping \ MappingException]
Acme \ AdminBundle \ Entity\Artistでエラーが発生しました

[ReflectionException]
プロパティの電子メールが存在しません

最初にymlオプションを使用してバンドルを生成しました。

4

2 に答える 2

8

まず、エンティティクラスファイルを生成します

php app/console doctrine:generate:entities [Your]/[Bundle]/Entity/Artist --path="src/" --no-backup

生成する新しいエンティティがある場合は、「-path」パラメータを指定する必要があります。

次に、スキーマを更新します。

php app/console doctrine:schema:update --force
于 2013-03-27T16:54:06.357 に答える
2

私も同じ問題を抱えていて、なんとか解決できました。

doctrine:generate:entityは、「Entity」に.phpエンティティファイルを生成しますが、「Resources / config / doctrine」にもormファイルを生成します。これにより、.phpエンティティファイルを変更すると競合が発生する可能性があります。

ormファイルを削除したところ、期待どおりに機能します。

于 2013-12-12T16:02:54.283 に答える