0

私のHTMLコードは以下の通りです:

<select name="txn" tabindex="3" id="txn" class="fixed" onfocus="highlightInput(this.id)" onblur="unhighlightInput(this.id)">
    <option value="RR" my="{{txn|genselected:"RR"|safe}>RR</option>
    <option value="CR" my="{{txn|genselected:"CR"|safe}}">CR</option>
    <option value="SR" my="{{txn|genselected:"SR"|safe}}">SR</option>
    <option value="OR" my="{{txn|genselected:"OR"|safe}}">OR</option>
</select>

txn は、forms.py で次のように定義されています。

txn = forms.ChoiceField(label="txn", 選択肢 = it_const.TXN),

私の質問: データベースでオプションの値が動的に増加していますか? データベースからオプション値を読み取り、html のドロップダウン メニューに配置したい。HTML コードと、txn フォーム フィールドからオプションを読み取ってメニュー オプションに表示する方法を教えてください。

前もって感謝します。

4

2 に答える 2

0

ビュー

def view_name(request):
    form = OptionForm()
    options = Option.objects.filter()
    return render(request, 'page.html', {
        'form': form, 
        'options': options,
    })

html

<form method="post">
    {% csrf_token %}    
    {{form}}
    <input type="submit" value="Submit">
</form>

{% for option in options %}
<p>{{option.field}}</p>
{% endfor %}
于 2013-02-24T03:58:14.003 に答える
-1

ビュー ファイルでデータベースの値を取得して配列に追加し、その配列をフォーム フィールドのオプションとしてレンダリングできます。

TXN_choices = Options.objects.all()

#and then run a for loop to dynamically generate the options array:
TXN = (
        ('x', 'xxx'),
        ('y', 'yyyy'),
    )

and then render the ModelForm.
于 2013-02-24T03:40:04.687 に答える