【问题标题】:Flask template integration with jQuery pluginFlask 模板与 jQuery 插件的集成
【发布时间】:2013-11-22 16:46:46
【问题描述】:

在我的 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 %}

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

【问题讨论】:

  • 默认是 url : /static/whatverfileyou want and file in static directory in project root.

标签: jquery python templates flask


【解决方案1】:

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

删除 {% raw %} 并在主文件中使用 template_render() 就可以了。

【讨论】:

    猜你喜欢
    • 2019-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-10
    • 2015-02-12
    • 2013-03-16
    • 2019-03-31
    • 1970-01-01
    相关资源
    最近更新 更多