我找到了解决办法。
require 'sinatra'
require 'dm-core'
require 'dm-migrations'
require 'haml'
require 'sass'
require 'shotgun'
set :views, :scss => 'views/', :haml => 'template', :default => 'views'
helpers do
def find_template(views, name, engine, &block)
_, folder = views.detect { |k,v| engine == Tilt[k] }
folder ||= views[:default]
super(folder, name, engine, &block)
end
end
get '/css/:name.css' do
scss :styles
end
get '/' do
haml :index
end
所以你可以看到,而不是:
get '/css/styles.css' do
sass :styles
end
应该是:
get '/css/:name.css' do
scss :styles
end
然后我将styles.scss 放入我的/views 文件夹中。但是,您可以通过编辑 :scss => ' .scss 文件的路径来修改目标目录:
set :views, :scss => 'views/', :haml => 'template', :default => 'views'