【问题标题】:Loading CSS and JavaScript with with bottle.py使用 bottle.py 加载 CSS 和 JavaScript
【发布时间】:2012-11-23 15:25:17
【问题描述】:

我正在尝试使用Bottle.py 编写应用程序

<link href="bootstrap.min.css" rel="stylesheet" media="screen">
<script src="http://d3js.org/d3.v2.js"></script>  
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script src="bootstrap.min.js"></script>

我的观点是复制这些 import 语句,而没有实际导入 css + js 文件本身。

正如tutorial 所建议的那样,我已经包含了一个static 模板

@route('/static/<filename>')
def server_static(filename):
    return static_file(filename, root='/static/')

如何修改 HTML 以便我的浏览器读取 *.js , *.css 文件?

【问题讨论】:

    标签: javascript python css bottle


    【解决方案1】:

    我用过(作为例子)

    ... href="/arch/favicon.ico"
    

    我有

    @route('/arch/<filename>')
    def fileget(filename):
    

    用于静态文件。

    【讨论】:

      【解决方案2】:

      使用:path 过滤器可以匹配/bootstrap.min.js/js/bootstrap.min.js 等URL。在第一种情况下,瓶子返回文件/usr/home/project/client/bootstrap.min.js,在第二种情况下/usr/home/project/client/js/bootstrap.min.js

      @route('<path:path>')
      def server_static(path):
          return static_file(path, root='/usr/home/project/client')
      

      :path 以非贪婪方式匹配包括斜线字符在内的所有字符,可用于匹配多个路径段。

      【讨论】:

        【解决方案3】:

        使用正则表达式匹配来提供.css.js 文件:

        @route('/<file:re:.*\.(css|js)>')
        def serve_cssjs_suffixed_file(file):
            return static_file(file)
        

        “static_file”函数的一些值得注意的选项是:

        root='target_dir' 指向包含文件的目录

        mimetype='text/css'如果瓶子猜错了,手动传递 MIME 类型

        【讨论】:

          猜你喜欢
          • 2010-10-06
          • 1970-01-01
          • 2017-11-24
          • 1970-01-01
          • 1970-01-01
          • 2012-10-12
          • 1970-01-01
          • 2018-03-26
          • 1970-01-01
          相关资源
          最近更新 更多