2

django-oscar アドレス アプリケーションをオーバーライドしたい。必要なのは、いくつかの AbstractAddress 属性 (apps.address.abstact_models) を削除することです。このドキュメントによると、プロセスは次のとおりです-同じ名前のローカルアプリを作成し、モデルモジュールで魔法を行います。ファイルの最後にあるデフォルトの abstract_models から * をインポートすることを忘れないでください。次に、このアプリを installed_apps に追加し、最後に schemamigration --auto して移行します。

しかし、django は変更を反映しませんでした。さらに、AbstractAddress クラスのメソッドをオーバーライドしようとしても無視されます。なんで?abstract_models について何か特別なことはありますか?

4

2 に答える 2

0

抽象モデル クラスは、他のモデルのように動的に上書きおよび選択されることを意図していません。ただし、独自の抽象クラスを作成し、oscar に含まれているものではなく、それを継承する新しい住所モデル (たとえば、ShippingAddress) を作成できます。

于 2014-04-19T05:27:59.677 に答える