Thank you! I am not confident that my search view (s. below) is truly safe, and am sufficiently terrified by CSRF prevention recommendations like this to avoid workarounds. I have tested template fragment caching successfully, although this approach does not leverage browser caching.
def search(request):
if request.method == 'POST':
form = SearchForm(request.POST)
if form.is_valid():
results = Page.objects.filter(title__icontains=form.cleaned_data['page_title'], content__icontains=form.cleaned_data['page_content'], author__last_name__icontains=form.cleaned_data['page_author']).order_by('title')
return render(request, 'results.html', { 'results' : results,} )
else:
form = SearchForm()
return render(request, 'form.html',
{
'target' : reverse(search),
'form' : form,
})
PS. You are one of the most friendly and competent people I met in any technical forum. Thanks for your time and patience.