#python #django
#python #django
Вопрос:
from django.shortcuts import render
from django.http import HttpResponseRedirect
from .models import Quote
from .forms import QuoteForm
from pages.models import Page
def quote_req(request):
submitted = False
if request.method == 'POST':
form = QuoteForm(request.POST, request.FILES)
if form.is_valid():
form.save()
return HttpResponseRedirect('/quote/?submitted=True')
else:
form = QuoteForm()
if 'submitted' in request.Get:
submitted = True
return render(request, 'quotes/quote.html', {'form': form, 'page_list': Page.objects.all(), 'submitted':submitted})
Контекст: Это views.py код код выглядит правильным, но нажатие на ссылку цитаты на локальном хосте html выдает вышеупомянутую ошибку
Комментарии:
1. Это должно быть
request.GET
(в верхнем регистре).
Ответ №1:
У вас просто опечатка:
if 'submitted' in request.Get:
Используйте request.GET
вместо этого.
Ответ №2:
я знаю, что прошло некоторое время, но я могу помочь другим, которые столкнулись с той же проблемой
from django.shortcuts import render
from django.http import HttpResponseRedirect
from .models import Quote
from .forms import QuoteForm
from pages.models import Page
def quote_req(request):
submitted = False
if request.method == 'POST':
form = QuoteForm(request.POST, request.FILES)
if form.is_valid():
form.save()
return HttpResponseRedirect('/quote/?submitted=True')
else:
form = QuoteForm()
if 'submitted' in request.Get:
submitted = True
return render(request, 'quotes/quote.html', {'form': form, 'page_list': Page.objects.all(), 'submitted':submitted})
Это то, что я сделал.
Убедитесь, что второе другое значение ниже « if request.method == «POST»: