def retrieve_with_host(request): print('retrieve_with_host') site = site_from_host(request) data = std_contextual_data(request, site) if request.path == '/': pages = Page.objects.filter(site=site, role=Page.HOME, published=True) else: pages = Page.objects.filter(site=site, handle=request.path, published=True) if not pages: return render(request, 'nopages.html', data) page = pages.first() data.update({'page': page}) return render(request, page.template.template_path, data)
def retrieve_with_handle(request, site_handle): print('retrieve_with_handle') if not page_within_scope(request, site_handle): return redirect('/') path = request.path.split(site_handle, 1)[-1] data = std_contextual_data(request, site_handle=site_handle) print(path.split(site_handle, 1)[-1]) if path.split(site_handle, 1)[-1] == '/': pages = Page.objects.filter(site__handle=site_handle, role=Page.HOME, published=True) else: pages = Page.objects.filter(site__handle=site_handle, handle=path, published=True) if not pages: return render(request, 'nopages.html', data) page = pages.first() data.update({'page': page}) return render(request, page.template.template_path, data)