[英]How to access external css file linked to html which is used in tornado web server?
我是龍卷風的新手,我正在從事一項非常基本的龍卷風網絡部署工作。 我正在嘗試呈現一個使用外部 css 的 HTML 文件。 但我無法加載 css。 我正在使用 VScode,所有文件都在我的資源管理器文件夾中。 這就是我試圖訪問 html 和 css 的方式:
import tornado.web
import tornado.ioloop
class basicRequestHandler(tornado.web.RequestHandler):
def get(self):
self.render("index.html")
class staticRequestHandler(tornado.web.RequestHandler):
def get(self):
self.render("demo.html")
if __name__=="__main__":
app=tornado.web.Application([
(r"/", basicRequestHandler),
(r"/upload", staticRequestHandler)
])
app.listen(8881)
print("listening on port 8881")
tornado.ioloop.IOLoop.current().start()
我的 demo.html 文件包含名為 design.css 的外部 css,我試圖像這樣訪問它:
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" href="design.css"> <!--here-->
</head>
<body>
<div class="drag-area">
<img src="a.png" width="80px" height="100px" class="center">
<h4 style="text-align: center; color: white; font-size: xx-large;" class="default">Drag and drop files here</h4>
<h4 style="text-align: center; color: white; font-size: xx-large;">OR</h4>
<input type="file" id="myfile" name="myfile" multiple class="button">
</div>
<br>
<br>
<button onClick="window.location.reload();">Refresh Page</button>
</div>
<br>
</body>
<button type="submit">UPLOAD</button>
</html>
我所有的文件(design.css、demo.html 等)都在我在 vscode 中導入的同一個文件夾中。
請幫助。
歡迎到這里。 您將需要一個靜態文件處理程序,如下所示
import os
import tornado.web
import tornado.httpserver
import tornado.ioloop
import threading, Queue
print('start Webserver')
SERVER_PORT = 9090
currenPath = os.path.dirname(os.path.abspath(__file__))
resourcesPath = currenPath + '/ressources'
class IndexPageHandler(tornado.web.RequestHandler):
def get(self):
self.render("index.html")
class webApplication(tornado.web.Application):
def __init__(self):
handlers = [
(r'/', IndexPageHandler),
(r'/(.*)', tornado.web.StaticFileHandler, {'path': resourcesPath})
]
settings = {
'static_path': resourcesPath,
'template_path': 'templates'
}
tornado.web.Application.__init__(self, handlers, **settings)
if __name__ == '__main__':
ws_app = webApplication()
server = tornado.httpserver.HTTPServer(ws_app)
server.listen(SERVER_PORT);
print('Listening on ',SERVER_PORT)
tornado.ioloop.IOLoop.instance().start()
如果是簡單的 css,最好使用 HTML。 如果它像 SPA,最好有縮小的文件,以免出現問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.