14

小さな開発者ドキュメント アプリの場合、HAML ファイルのみを提供するように Sinatra アプリをセットアップしたいと思います。CSS ファイルと画像のルートの後に、要求された任意のパスの HAML ファイルをロードしようとするルートが必要です。

例えば:

  • /indexロードviews/index.haml(存在する場合)
  • /this/page/might/existロードviews/this/page/might/exist.haml(存在する場合)

このルートをどのように指定しますか?

4

1 に答える 1

23

これはそれを行うように見えます:

get '/*' do
  viewname = params[:splat].first   # eg "some/path/here"

  if File.exist?("views/#{viewname}.haml")
    haml :"#{viewname}"

  else
    "Nopers, I can't find it."
  end
end
于 2012-05-29T20:20:02.993 に答える