gpt4 book ai didi

python - Bottle 网络应用程序不提供静态 css 文件

转载 作者:太空狗 更新时间:2023-10-30 00:40:12 24 4
gpt4 key购买 nike

尽管我使用的是 static_file 方法,但我的 bottle Web 应用程序并未提供我的 main.css 文件。

应用.py

from bottle import *
from xml.dom import minidom
@route('/')
def index():
return template("index")

@route('/glossaryXML')
def glossary():
doc_def = minidom.parse("table_definitions.xml")
terms = doc_def.getElementsByTagName("str_term")
defins = doc_def.getElementsByTagName("str_definition")
return template("list", terms=terms, defins=defins)

@route('<filename>.css')
def stylesheets(filename):
return static_file(filename, root='static')

@error(404)
def fourofour(error):
return "Error"

run(host='localhost', port=8080, debug=True)

我要访问的页面是索引页,index.tpl 看起来像

<!DOCTYPE HTML>
<html>
<head>
<title>ICT Applications Glossary</title>
<link type="text/css" href="main.css" rel="stylesheet">
</head>
<body>
It works
</body>
</html>

我的 CSS 文件位于我的根文件夹中名为“static”的文件夹中

最佳答案

而是像这样指定你的静态路由

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

这将提供静态目录中的任何文件,而不仅仅是 css。

使其样式表特定

@get('/<filename:re:.*\.css>')
def stylesheets(filename):
return static_file(filename, root='static/')

注意:对于后一种选择,您可以将样式表放在它们自己的目录“static/css”或只是“css”中,并将它们与其他静态资源(脚本、图像等)分开,以便这样做只需将 root 参数指定为该目录即可,例如`root='static/css'。

关于python - Bottle 网络应用程序不提供静态 css 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29358230/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com