簡體   English   中英

帶有動態列表的下拉列表Django

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM