Doctrineのエンティティを使って、DBのviewテーブルにアクセスしていたときの問題です。
例えば、「view_memo
」というテーブルが存在していて、ViewMemo
エンティティを使っているとします。普通に動くのですが、マイグレーションするときに問題が出ました。
viewテーブルが存在しないと判断されて、マイグレーションでview_memo
テーブルを作成しようとします。
解決方法
いろいろ調べて、結局Symfonyのマニュアルに解決方法がありました。
まずは、doctrineの設定ファイルを見つけます。
config/packages/doctrine.yaml
ここに、schema_filter
の一行を加えます。
doctrine:
dbal:
schema_filter: '/^(?!view_memo).*$/'
これで解決しました。
ここは正規表現になっているので、複数ある場合は色々かけますね。
schema_filter: '/^(?!view_memo|more_tables|views*).*$/'