Объект формы, не подлежащий повторению в Django

#python #django #django-views #django-forms

Вопрос:

Я хочу назначить ввод формы функции, на мой взгляд, но я продолжаю получать эту ошибку. Пожалуйста, помогите мне это исправить.

Ошибка

 receiver = list(ToolsForm.declared_fields['receiver_mail'])
TypeError: 'CharField' object is not iterable
 

Комментарии:

1. Это должно быть receiver = ToolsForm.cleaned_data['receiver_mail'] так без list(...) части и с .cleaned_data .

Ответ №1:

Вы можете получить значение, связанное с receiver_mail полем, с помощью:

 receiver = form.cleaned_data['receiver_mail']
 

таким образом, без использования list(…) части и с .cleaned_data [Django-doc] форма должна быть экземпляром ToolForm , а не ссылкой на ToolForm класс. Прежде чем вы сможете получить данные, вам сначала нужно будет подтвердить форму, так что:

 form = ToolsForm(request.POST, request.FILES)
if form.is_valid():
    receiver = form.cleaned_data['receiver_mail']