Представления не возвращали объект HttpResponse.Вместо этого он вернулся - PullRequest
0 голосов
/ 24 мая 2019

Я пытаюсь создать свою новую форму, и в этом процессе я столкнулся с этой проблемой. Представление myapp.views.contact не возвращало объект HttpResponse. Вместо этого он вернул None. Пожалуйста, помогите мне

Проблема в функции рендеринга и не имеет понятия, как решить эту ошибку HttpResponse

from django.shortcuts import render
from django.http import HttpResponse
from .forms import ContactForm,SnippetForm

def contact(request):

    if request.method == 'POST':

        form = ContactForm(request.POST)
        if form.is_valid():


            name= form.cleaned_data['name']
            email=form.cleaned_data['email']

            print(name,email)

            form = ContactForm()
            return render(request,'form.html',{'form':form})

def snippet_detail(request):

    if request.method == 'POST':

        form = SnippetForm(request.POST)
        if form.is_valid():


            print("VALID")
            form = SnippetForm()
            return render(request,'form.html',{'form': form})
            #form.save()

Создайте свой вид здесь.

Сообщение об ошибке находится в браузере, и вопрос сам по себе является сообщением об ошибке.

1 Ответ

2 голосов
/ 24 мая 2019

Может быть ошибка формы

Вам нужно обработать ошибку формы.

if request.method == 'POST':

    form = ContactForm(request.POST)
    if form.is_valid():


        name= form.cleaned_data['name']
        email=form.cleaned_data['email']

        print(name,email)

        form = ContactForm()
        return render(request,'form.html',{'form':form})

    else:
       return render(request,'form.html',{'form':form})
 else:
    form = ContactForm()
    return render(request,'form.html',{'form':form})

надеюсь, это поможет. см. это

...