2017-02-21 4 views
1

odooサーバーを実行すると、以下の警告メッセージが表示されます。Odoo警告「モジュールが部分的に削除されたか、名前が変更された可能性があります」

警告dietfacts2 openerp.modules.loading:モデルproduct.nutrientitemは宣言されていますが、ロードできません。 (おそらくモジュールが部分的に削除されたり名前が変更されたりした)

私はモデル名を作成したが、その後変更したので、この警告メッセージが表示されることがわかった。モデルはpostgres DBに保存されました。私はDB内のテーブルを削除しようとしましたが、失敗しました。

dietfacts2 = ir_modelからの削除#model = 'product.nutrientitem'; エラー: "model"列のnull値がNULL以外の制約に違反しています 詳細:失敗行には、(1011,2017-02-20 04:15:05.207869,2017-02-20 04:15:05.207869,285、null、 f、false、product_nutrientitem_write_uid_fkey、null、null、null、null)。 CONTEXT: " "SQL文の" UPDATE ONLY" 公共ir_model_constraint "SET "モデルは、"= NULL $ 1 OPERATOR(pg_catalogの=) "モデル""

答えて

1

多分あなたは最初にクリアする必要があり、他のテーブルのデータを持っています。 ir_model_dataを試してみてください

DELETE FROM ir_model_data WHERE model = 'your.model'; 

テーブルを削除できるはずです。あなたのテーブルに関連する制約がある場合は、それらを識別して削除する必要があります。

+0

すべてがうまくいきます。私の投稿が正しいとマークしてください。良い一日を過ごしてください。 –

+0

パーフェクト!魅力として働くir_model_dataテーブルからすべてのエントリを削除し、ir_modelからモデルを削除しました。ありがとうございました... – skyguyver

+0

ありがとう、私は助けることがうれしいです。 –

0

DBに古いモデルデータがあります。通常、削除/名前変更されたモデル、またはモジュールが適切にアンインストールされていないことが原因です。

このような状況に対処するための有用なモジュールは:

https://github.com/OCA/server-tools/tree/9.0/database_cleanup

https://www.odoo.com/apps/modules/9.0/database_cleanup/

それはなど、アクション、あなたがモデルのために古いデータを削除することができ、どのような「孤児」のレコードは、あなたのDBにまだあります。テクニカルセクションのデータベースクリーンアップ用のコントロールパネルがあります。

+0

うわー、それは素晴らしいです。私はこのモジュールを手作業でインストールしようとしましたが、古くなったデータエントリ、カラム、テーブルなどを完全に見ることができます。ありがとうございました! – skyguyver

関連する問題