当前位置:  开发笔记 > 编程语言 > 正文

没有帮助,Sinatra无法提供JavaScript文件?它是否正确?

如何解决《没有帮助,Sinatra无法提供JavaScript文件?它是否正确?》经验,为你挑选了1个好方法。

好的,所以我说这个没有问题,但是我想确保我做得对,因为从长远来看,这似乎是一项额外的工作.

我正在与Sinatra合作并使用HAML模板.我想在我的HAML文件中包含一个JavaScript文件.我的目录结构如下所示:

媒体/

JS /

init.js (我要包含的文件)

CSS /

楷模/

意见/

layout.haml

路线/

init.rb

bootstrap.rb (包含在init.rb中)

当我尝试包含文件(没有额外的路由或任何东西)时,我得到一个页面无法找到错误.但是,如果我添加此代码,那么它工作正常:

get '/media/js/:name' do
    begin
        send_file('media/js/' + params[:name])
    rescue
       "There's nothing for you here"
    end
end

我这样做是为了提供我的媒体/静态文件没有问题,但我只是想确保这是必要的,我想避免这是可能的.

编辑

我将以下代码包含在我的bootstrap.rb文件中,但无济于事:

set :root, File.dirname(__FILE__)
enable :static

Adrian.. 9

来自Sinatra的网站:

静态文件由./public目录提供.您可以通过设置:public选项指定其他位置:

set :public, File.dirname(__FILE__) + '/static'

您正在从media目录中提供服务.



1> Adrian..:

来自Sinatra的网站:

静态文件由./public目录提供.您可以通过设置:public选项指定其他位置:

set :public, File.dirname(__FILE__) + '/static'

您正在从media目录中提供服务.


或者,创建一个名为public的文件夹,并将`media`移动到该文件夹​​中.
推荐阅读
php
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有