どのようにDjangoでフォームデータを処理しますか?

通常在Django中处理表单数据会涉及以下几个步骤:

  1. フォームクラスの定義:まず、Djangoから継承したFormクラスのフォームクラスを定義する必要があります。このフォームクラスには収集する必要のあるフィールドと関連するバリデーションルールが含まれています。
from django import forms

class MyForm(forms.Form):
    name = forms.CharField(max_length=100)
    email = forms.EmailField()
  1. ビュー関数内でフォームインスタンスを作成し、リクエストデータをフォームインスタンスに渡す。
from django.shortcuts import render
from .forms import MyForm

def my_view(request):
    if request.method == 'POST':
        form = MyForm(request.POST)
        if form.is_valid():
            # 处理有效数据
            name = form.cleaned_data.get('name')
            email = form.cleaned_data.get('email')
    else:
        form = MyForm()

    return render(request, 'my_template.html', {'form': form})
  1. HTMLテンプレート内で、Djangoのテンプレート言語を使用してフォームをレンダリングします。
<form method="post">
    {% csrf_token %}
    {{ form.as_p }}
    <button type="submit">提交</button>
</form>
  1. フォームデータを処理する際、ビュー関数内でform.cleaned_dataを使用して、検証済みデータを取得し、適切な処理を行うことができます。

表形データを処理する際には、データの有効性を確認する必要があります。form.is_valid()を使用してフォームデータの有効性を確認できます。同時に、Djangoには、フィールドの検証、フォームの検証、およびカスタム検証など、便利なフォーム検証機能も提供されていますので、必要に応じて使用してください。

bannerAds