好的,所以我说这个没有问题,但是我想确保我做得对,因为从长远来看,这似乎是一项额外的工作.
我正在与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
目录中提供服务.
来自Sinatra的网站:
静态文件由./public目录提供.您可以通过设置:public选项指定其他位置:
set :public, File.dirname(__FILE__) + '/static'
您正在从media
目录中提供服务.