Mercurial > piecrust2
view piecrust/admin/views/preview.py @ 787:f6f9a284a5f3
routing: Simplify how route functions are declared and handled.
* Site config now only has to declare the function name.
* Simply code for running route functions.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Thu, 01 Sep 2016 23:00:58 -0700 |
parents | 5e91bc0e3b4d |
children | 82509bce94ca |
line wrap: on
line source
import os.path from flask import current_app, g, make_response from flask.ext.login import login_required from piecrust import CACHE_DIR from piecrust.app import PieCrustFactory from piecrust.serving.server import Server from ..blueprint import foodtruck_bp @foodtruck_bp.route('/site/<sitename>/') @login_required def preview_site_root(sitename): return preview_site(sitename, '/') @foodtruck_bp.route('/site/<sitename>/<path:url>') @login_required def preview_site(sitename, url): root_dir = g.sites.get_root_dir(sitename) appfactory = PieCrustFactory( root_dir, cache_key='foodtruck', debug=current_app.debug) server = Server(appfactory, root_url='/site/%s/' % sitename) return make_response(server._run_request)