Mercurial > piecrust2
view piecrust/admin/views/preview.py @ 1136:5f97b5b59dfe
bake: Optimize cache handling for the baking process.
- Get rid of the 2-level pipeline runs... handle a single set of passes.
- Go back to load/render segments/layout passes for pages.
- Add descriptions of what each job batch does.
- Improve the taxonomy pipeline so it doesn't re-bake terms that don't need
to be re-baked.
- Simplify some of the code.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Mon, 23 Apr 2018 21:47:49 -0700 |
parents | a90541509a41 |
children | 0d699f04968c |
line wrap: on
line source
from flask import g, request, make_response from flask.ext.login import login_required from piecrust.serving.server import PieCrustServer from ..blueprint import foodtruck_bp @foodtruck_bp.route('/preview/') @login_required def preview_root_page(): return preview_page('/') @foodtruck_bp.route('/preview/<path:url>') @login_required def preview_page(url): site = g.site pcappfac = site.piecrust_factory root_url = request.script_root or '' root_url += site.make_url('/preview/') server = PieCrustServer(pcappfac, root_url=root_url) # Patch the WSGI environment for the underlying PieCrust server, # because it doesn't generally handle stuff being under a different # sub folder of the domain. script_name = request.environ['SCRIPT_NAME'] request.environ['SCRIPT_NAME'] = '' request.environ['PATH_INFO'] = script_name + request.environ['PATH_INFO'] return make_response(server)