我不应该使用url_for()指向Flask中的静态文件吗?

时间:2017-02-22 05:34:47

标签: python performance flask

在Flask Static Files指南的Quickstart部分。它声明:

  

动态Web应用程序还需要静态文件。那通常是在哪里   CSS和JavaScript文件来自。理想情况下您的Web服务器   配置为您服务,但在开发过程中Flask可以   也这样做。

这是否意味着我不应该使用:

<link rel="stylesheet" href="{{url_for('static', filename='styles.css')}}">

在我的应用中,我曾经在制作过吗?我的应用程序在工作中内部使用,因此它不会获得大量流量,但它会在一天中使用。

我应该将其切换为:

<link rel="stylesheet" href="static/styles.css">

表现会更好吗?

1 个答案:

答案 0 :(得分:1)

不,这根本不是它的意思。

url_for('static', filename='...')生成指向静态资产的链接。使用开发服务器时,Flask会提供文件,但效率很低。在生产中,您会告诉您的Web服务器直接在/static下提供所有内容,而不是让Flask处理它。但这并没有改变网址的内容,只是处理它们的地方。构建网址相对较快,不太可能是您的应用程序需要花费时间。