Flask模板与jQuery插件集成

时间:2013-11-22 16:46:47

标签: jquery python templates flask

我的Flask模板中嵌入了一些jQuery,包括非标准插件。我无法弄清楚如何在我的项目文件夹中引用该插件的本地副本。我需要将它保存在特殊的地方,还是在我的主项目中调用引用?

如果,在我的模板中,我引用了github上的插件的远程版本(粗鲁,我知道,但我只想测试它)然后它工作正常,所以我知道我有一个本地问题

模板如下所示:

  <script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js">
    </script>

  <script src="jquery.lazyload.js">
    </script>

  <script type="text/javascript" charset="utf-8">
  $(function() {
     $("img.lazy").lazyload();
  });
  </script>

我尝试在主文件夹和模板文件夹中同时保存.js和.min.js版本,但仍然没有骰子。

有关如何让我的模板看到本地插件的任何想法?

谢谢

莫妮卡


编辑:我已将.js文件添加到/ static,并将模板中的语法更改为:

{% raw %}
<script src="

  {{ url_for('static', filename='jquery.lazyload.min.js') }}
  ">
  </script>
{% endraw %}

但是我的结果仍然是空照片。

1 个答案:

答案 0 :(得分:0)

我使用的是Jinja2的模板捆绑器Environment()。为了执行url_for(),你必须使用Flask的内置template_render()。

删除{%raw%}并在主文件中使用template_render()可以解决问题。