私はフラットページを使用して&情報ページを持っています。しかし、私は訪問者がリストに自分の電子メールに署名することができるフォームを追加したい。しかし、フォームビューをレンダリングするためにURLを送信すると、フラットページのコンテキストはありません。フラットページコンテキストを私の電子メールフォームビューに含めるか、自分のフォームコンテキストを私のフラットページに追加するための最良の方法は何ですか?django-flatpagesにフォームを追加
この溶液のためにTommasa Barbugliに感謝します。あなたのコンテキストとしてフラットページテンプレートを使用して定期的なビューを使用し、RequestContextの - あなたはフォームを使用してしようとしている場合、あなたはフラットページを使用する必要はありません
from django.contrib.flatpages.models import FlatPage
from django.shortcuts import render, get_object_or_404
from canada.bulkmail.models import *
def email(request):
contact_flatpage = get_object_or_404(FlatPage, url='/contact/')
ContactEmailFormSet = modelformset_factory(Contact, formset=ContactEmailForm)
if request.method == 'POST':
formset = ContactEmailFormSet(request.POST)
if formset.is_valid():
contact = formset.save()
else:
formset = ContactEmailFormSet()
return render(request, 'flatpages/default.html', {
"formset": formset,
"flatepage": contact_flatpage,
})
ありがとうございます!私はとにかくやっていると思っていたことだけです。 –