0

テキスト入力フィールドとチェックボックスを作成するテンプレートがあります。チェックボックスをオフにすると、テキストフィールドが無効になり、オフになります。チェックボックスをオンにすると、テキストフィールドが有効になり、ユーザーが入力した場合と入力しなかった場合があります。私のコントローラーでは、チェックボックスがオフになっていて、チェックボックスがオンになっているがテキストフィールドが空白の場合の2つのケースを区別する必要があります。テキストフィールドの値は取得できますが、チェックボックスの値は取得できません。これを行う方法はありますか?私はこれをグーグルで検索しました、そしてそれがここで数回尋ねられたのを見ます、しかし解決策のどれも私のためにうまくいかないようです。

4

2 に答える 2

1
request.POST.get('my_checkbox_field')

PS Djangoでは、コントローラーではなく「ビュー」と呼ばれます。

UPDATE(コメントに基づく)

Djangoにはコントローラーの概念がなく、ビューに最も近いため、「コントローラー」は「ビュー」を意味します。そうでない場合は、必ず訂正してください。そのため、すべての関数ベースのビューには、少なくともrequestパラメーターが必要です。クラスベースのビューを使用している場合、 thenrequestはビュー オブジェクトに格納されるだけなので、 に変更するだけですself.request。これは十分に文書化されているほとんど最小限の理解に関するものであるため、ドキュメントを完全に読むためにもう少し時間をかけることをお勧めします。

于 2012-05-02T14:23:28.227 に答える
1

これを探していますか?

def myview(request):
    form = MyForm()

    if request.method == 'POST':
        form = MyForm(request.POST)

        if form.is_valid():
            checkbox = request.POST.get('my_checkbox', False) # will be True if checked

            if checkbox:
                # check textfield content
            else:
                # do something else

            return render_to_response(template, kwvars, context_instance=RequestContext(request))
于 2012-08-03T06:53:03.443 に答える