2

キーが関連するモデルの外部キータイプを取得する方法はありますか?現在、私は次のようなことを試みています:

def __init__(self, *args, **kwargs):
        super(JobOrderSupplementForm, self).__init__(*args, **kwargs)
        for field in self.fields:
            if type(self.fields[field]) == TypedChoiceField:
                fieldOption = <Whatever type key points to>.get(id=self.__dict__['initial'][field])
                if not fieldOption.isActive:
                    ...Do something to the choices...


フォームに表示される利用可能な選択肢をプログラムで設定しようとしています。これまでのところ、以下のこのスニペットが外部キーオブジェクトとのある種の関係を取得していることを理解することしかできませんでした...

self.fields[field].__dict__['coerce']
>>> <bound method ForeignKey.to_python of <django.db.models.fields.related.ForeignKey object at 0x01609EF0>>


どんな助けでも大歓迎です。

4

3 に答える 3

4

それを理解しました...それはdirとtypeの非常に複雑で退屈なプロセスでしたが、この行は外部キーが関連しているModelタイプを取得します:

    getattr(type(self.instance), field).field.rel.to
于 2009-12-18T20:13:35.580 に答える
1

多分あなたは一般的な関係を調べるべきですか?

于 2009-12-18T20:16:50.210 に答える