モデルフィールドでバックアップされていない永続モデルプロパティがあるとします。このフィールドを管理インタフェースで編集するにはどうすればよいですか?Djangoの追加フィールドadmin interfaces
例のセットアップ:
# models.py
# appropriate imports...
class MyModel(Model):
# regular fields.
foo = CharField(max_length=50)
bar = BooleanField()
# ...
# custom property, backed by a file.
def _get_meh (self):
return ... # read from file
def _set_meh (self, value):
... # write to file.
meh = property(_get_meh, _set_meh)
meh
の値が実際にディスク上のファイルに格納されているパスですfoo
の値に依存します。私はmeh
の値を管理インターフェースから編集できるようにしたいと思います。
# admin.py
# appropriate imports...
class MyModelAdmin(ModelAdmin):
# what do I put here?
注:場合には、誰かが私はDjangoのバージョン1.2.1を使用しています、依頼する必要がありますが、それはあなたのソリューションによって必要とされている場合、アップグレードが可能です。 Python 2.5上で動作するものは何でもできますが、これは私が実際にはアップグレードできません。
追加ノートを「ジャンゴモデルの上書き保存します」この特定の値は、私が変更できない/変更したくない他のソフトウェアによって取得されるためです。 –
tinsukEのコメントで参照されているページにアクセスできます:http://web.archive.org/web/20120828045035/http://www.hindsightlabs.com/blog/2010/02/11/adding-extra-fields- to-a-model-form-in-djangos-admin/ –