路径解析
问题描述:
我使用CherryPy的Jinja2的与模板从“若干意见”的目录是这样的:路径解析
env = Environment(loader = FileSystemLoader('views'))
当我呈现的索引页:
index = env.get_template('index.html')
它显示了罚款,但引用的css,javascripts和图像(在index.html中)未被解析:
<head>
<link rel="stylesheet" type="text/css" media="screen" href="css/web.css">
<link rel="shortcut icon" type="image/png" href="img/favicon.png">
<script src="js/jquery-1.7.1.min.js" type="text/javascript" charset="utf-8"></script>
</head>
文件系统是有组织的ke:views/css,views/js,views/img
什么是获得工作文件解析的可靠方法?
答
Jinja模板中的静态路径与Jinja无关。这完全是关于Web服务器的配置。如果您使用的烧瓶中,用SharedDataMiddleware
调度静态文件,即
from werkzeug import SharedDataMiddleware
app.wsgi_app = SharedDataMiddleware(app.wsgi_app,
{ '/static': '/path/to/static/files' })
静态目录的结构:
.../static/
img/
css/
js/
etc/
不要忘记在路径的开头添加斜线:
<link rel="shortcut icon" type="image/png" href="/static/img/favicon.png">
强烈建议在生产服务器上使用SharedDataMiddleware
。 Nginx是正确的。
我在一个不同的设置,但帮助进行:我没有在我的静态路径开始的斜杠。现在一切正常,+1! – dwanderson 2014-02-09 23:18:19
Downvoter,谨慎讲解? – 2014-05-04 08:47:24