为了账号安全,请及时绑定邮箱和手机立即绑定

tornado 静态文件的路径错误

tornado 静态文件的路径错误

慕斯王 2019-04-07 09:38:42
我写了一个页面,引用了bootstrap中的文件,刚开始我的目录结构是这样的:bootstrapcssbootstrap.cssjsbootstrap.jsimgtornadoexample.html目录中的文件并没有全部列出来。example.html中引用bootstrap的代码如下:我的hello.py代码如下:importtornado.ioloopimporttornado.webimportosclassMainHandler(tornado.web.RequestHandler):defget(self):print"here"self.render("example.html")application=tornado.web.Application([(r"/",MainHandler)])if__name__=="__main__":application.listen(8888)tornado.ioloop.IOLoop.instance().start()运行的时候发现bootstrap的样式表和js效果全部没有,在firebug下面看到很多下面这样的错误:"NetworkError:404NotFound-http://localhost:8888/bootstrap/js/bootstrap.js"然后,我看了tornado的文档,做了如下改动:在tornado目录下面新建一个static目录,把bootstrap放进去,目录结构如下:tornadostaticbootstrapcssjsimghello.pyexample.html把example.html对bootstrap文件的引用改成下面这样:hello.py修改部分如下:settings={"static_path":os.path.join(os.path.dirname(__file__),"static")}#配置静态文件路径application=tornado.web.Application([(r"/",MainHandler),],**settings)再次执行发现结果正常。我很纳闷,tornado一定要配置static_path吗?我之前的错误是在哪里?而且我把bootstrap目录放回最初的目录,然后这样配置settings:settings={"static_path":os.path.join(os.path.dirname(__file__),"../bootstrap")}example.html还是最初那样,这样修改还是错误,求教到底是哪里的问题?
查看完整描述

2 回答

?
慕妹3242003

TA贡献1824条经验 获得超6个赞

要么你配置static_path,要么你自己处理静态文件。Tornado不是RoR,也不是Django,不会隐式地帮你serve静态文件。
static_path的挂载路径是/static,因此你把文件放回去之后,访问路径应该是/static/css/bootstrap.css。
                            
查看完整回答
反对 回复 2019-04-07
  • 2 回答
  • 0 关注
  • 1234 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信