Как очистить поля формы после отправки в Django

У меня это:

def profile(request, username): if request.method == 'POST': if request.user.is_authenticated(): new_message = Message(author = request.user) form = MessagesForm(request.POST, instance = new_message) else: form = MessagesForm(request.POST) if form.is_valid(): form.save() else: to_user = User.objects.get(username = username) form = MessagesForm(initial = {'user': to_user.pk}) return render(request, "profile.html", {'username': username, 'form': form, 'messages': messages}) 

Эта форма отправляет сообщение и возвращает ту же страницу. Моя проблема в том, что после отправки я снова вижу, что мое поле заполнено моей информацией. Как очистить его после отправки?

Это стандартное перенаправление после отправки формы для предотвращения дублирования.

Просто верните перенаправление в вашу форму на успех.

 if form.is_valid(): form.save() return http.HttpResponseRedirect('') 

После сохранения формы вместо того, чтобы показывать пост dict, укажите пустую форму

 form = EmployeeForm() if request.method == "POST": pDict = request.POST.copy() form = EmployeeForm(pDict) #if not valid shows error with previous post values in corresponding field if form.is_valid(): form.save() form = EmployeeForm() # show empty form no need to give HttpResponseRedirect() 

Обычно вы можете инициализировать одну и ту же пустую форму после сохранения данных:

 if request.method == "POST": rf = RegistrationForm(request.POST) if rf.is_valid(): print 'Saving datas..' #logic to save datas rf = PreRegistrationForm() return render_to_response('registration/confirmation_required.html', {'settings': settings}, context_instance=RequestContext(request))