これは簡単な質問だと思いますが、これが可能であるかどうかにはっきりとした答えは見つかりません。Djangoテンプレートのフォームフィールドとしてのモデルフィールド
レンダリング時にテンプレートに渡されるModelオブジェクトがあります。ほとんどのModelフィールドを使って値を表示していますが、そのうちのいくつかをフォームフィールド(ModelFormsでレンダリングされたようなそれぞれのHTML要素)で表示する必要があります。ここではModelFormクラスの使用を避けることができ、単にモデルのフィールドを使用してテンプレートから直接フォームフィールドとしてレンダリングできますか?
例:上記のモデル例をもとに、テンプレートで今
class MyModel(models.Model):
month = models.PositiveIntegerField(_('Month'), choices=MONTH_CHOICES)
year = models.PositiveIntegerField(_('Year'))
は、私が選択した電流値とドロップダウンリストとして値ではなく、月と年表示したいですか?
任意のポインタが評価されました!
ユースケース:
あなたはクエリセットをレンダリングする場合のような一般的なlist_viewを想像してみてください。あなたが持っているものは反復ごとにオブジェクトがありますが、リストビューでは少数のオブジェクト属性をすばやく編集できるようにして、完全な編集モード(単純なAJAXなど)にならないようにします。
なぜ 'ModelForm'の使用を避けたいですか?これは正しいツールです。 – DrTyrsa
私は、なぜ、どこでこれが役に立つのか、いくつかの洞察を与えておくべきだったと思います。 クエリーセットをレンダリングする場合の一般的なlist_viewのようなケースを想像してみてください。ここでは、反復ごとにオブジェクトがありますが、リストビューでは、フル編集モードに移行するのを避けるために、少数のオブジェクト属性をすばやく編集できるようにしたいと考えています。これが私のニーズを明確にすることを願っています。 – user1039384
modelfomsのリストはここの解決策です。モデル自体に '{{form.instance}} 'でアクセスすることができます – DrTyrsa