[英]Dropdowns Django with dynamic list
我正在嘗試從動態列表中提供Django的下拉菜單。 例如,每次運行模型時,它都應使用數據集的列名稱,並且這些名稱應出現在下拉菜單上。
以前,我使用了Django的文本框,如下所示:
Forms.py
from django import forms
class LinearForm(forms.Form):
Column_name1 = forms.CharField()
我看過forms.ModelMultipleChoiceField()
和forms.ChoiceField()
將選擇作為值列表,因為我需要從Views.py
生成動態列表。 我該如何進行呢?
我們可以覆蓋__init__
方法來執行此操作
class LeniarForm(forms.Form):
choice_field = forms.ChoiceField(choices=[])
def __init__(self, *args, **kwargs):
choices = kwargs.pop('choices', [])
super(LeniarForm, self).__init__(*args, **kwargs)
self.fields['choice_field'].choices = choices
views.py
from .forms import LeniarForm
def my_view(request):
# ....
dynamic_choices = (('a', 'a'), ('b', 'b'))
f = LeniarForm(choices=dynamic_choices)
# ....
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.