2011-01-31 3 views

答えて

5

あなたが望むのは「レイアウト」と呼ばれます。単にlayout.hamlというファイル(またはlayout.erb、または選択したテンプレート言語を使用する)をviewsディレクトリに置き、デフォルトでは他のビューの内容がラップされます。 yieldの出力を、個々のビューの内容を表示するレイアウトにします。

  • HAML:= yield
  • エルブ:たとえば、あなたが別のレイアウトを使用するルートの結果をしたい場合は<%= yield %>

は、あなたがそうのような代替レイアウトビューの名前を指定することができます:

get "/login" do 
    # ... 
    haml :login, :layout => :logged_out 

    # Or for ERb: 
    # erb :login, :layout => :logged_out 
end 

あなたが任意のレイアウトを使用しないように特定のルートをしたい場合は、falseを渡す:

get "/" do 
    # ... 
    haml :home, :layout => false 

    # Or for ERb: 
    # erb :home, :layout => false 
end 

詳細については、the Sinatra bookを参照してください。

0

はい! /views/layout.erbにあるレイアウトファイルです。 自分で作成するか、this scriptを使用して、sinatraアプリケーションのスケルトンを生成してください。

関連する問題