0

SymfonyプロジェクトでDoctrine2Migrationsを使用しようとしています。

そのために、私は最初に置きました

[doctrine-migrations]
   git=http://github.com/doctrine/migrations.git

[DoctrineMigrationsBundle]
   git=http://github.com/doctrine/DoctrineMigrationsBundle.git
   target=/bundles/Symfony/Bundle/DoctrineMigrationsBundle
   version=origin/2.0

depsファイル内。

次に、ベンダーを次のように更新しています。

php bin/vendors install

そして、使用してみてください

php app/console doctrine:migrations:diff

しかし、私はそこに致命的なエラーをもたらしています:

PHP Fatal error:  Call to undefined method Doctrine\DBAL\Configuration::getFilterSchemaAssetsExpression() in /home/milos/workspace/Symfony/vendor/doctrine-migrations/lib/Doctrine/DBAL/Migrations/Tools/Console/Command/DiffCommand.php on line 85

Fatal error: Call to undefined method Doctrine\DBAL\Configuration::getFilterSchemaAssetsExpression() in /home/milos/workspace/Symfony/vendor/doctrine-migrations/lib/Doctrine/DBAL/Migrations/Tools/Console/Command/DiffCommand.php on line 85
4

1 に答える 1

1

問題は、Doctrineの移行が、Doctrine2.1ではなくDoctrine2.2にのみ存在する関数を呼び出していることです。これは、このコミットで数日前に紹介されたばかりです

問題は、doctrine-migrationsにはブランチやタグがないため、自分に合った古いバージョンを要求できないことです。

symfony-2.0を使用している場合、Doctrine2.2にアップグレードすることは困難です。だから、私がすることは、今のところ手動でそのコミットで導入された行を削除し、次に教義で新しい問題を開くことです-状況を説明し、修正を求める移行github (おそらく最良のアイデアは、タグを追加することですDoctrine 2.1と互換性のあるバージョン)

編集

@Milosによって開かれた問題のおかげで、これは修正されました。この問題はもう見つかりません。

于 2012-09-19T14:14:36.217 に答える