Восстановление данных из формы Django

Я впервые делаю Django Form challenge. Задача на данный момент состоит в том, чтобы просто из HTML шаблона получить информацию last_name и сохранить в DB из представления. Итак, у меня есть сценарий ниже:

models.py:

class Person(models.Model):
    first_name = models.CharField(max_length=255)
    last_name = models.CharField(max_length=255)

HTML шаблон, я помещу ниже только часть формы:

      <form action="{% url 'store' %}" method="post">
        {% csrf_token %}
        <div class="form-group row">
          <label for="last_name" class="col-sm-2 col-form-label">Last Name</label>
          <div class="col-sm-10">
            <input type="text" class="form-control" id="last_name" placeholder="Last Name">
          </div>
        </div>

        <div class="form-group row">
          <div class="col-sm-10">
            <button type="submit" class="btn btn-primary">Send Last Name</button>
          </div>
        </div>
      </form>

И сам views.py... Я создал InsertLastName ModelForm для хранения данных из формы, но ничего не получилось. По какой-то причине, когда я попытался вызвать form.clean_data, я обнаружил ошибку о проверке is_valid(). Похоже, что я не получаю информацию из label.

class InsertLastName(forms.ModelForm):
    class Meta:
        model = Person

        fields = ['last_name']
        exclude = ['first_name']

def index(request):
    persons = Person.objects.all()
    context = {'persons': persons}
    return render(request, '/index.html', context)

def store(request):
    form = InsertLastName(request.POST or None)
    print(form.cleaned_data['last_name'])

    return HttpResponse("Storing a new Last Name object into storage")

Каким образом правильно получить информацию из метки last_name в моей форме? Я следую этой документации и кодирую из шаблона challenge.

Вы просто задаете имя attr для вашего входного html-тега Пример:

<input type="text" name="first">

Для получения ввода в функции store в view.py:

request.POST.get("first")

Добавьте это в html-шаблон вашей формы

{{persons}}
Вернуться на верх