3

Liquidを使用すると、レイアウトをネストできます。たとえば、私のサイトの デフォルト レイアウトはベース レイアウトから作成されます。

これはERBで可能ですか? もしそうなら、どのように?

私はGitHub PagesサイトをSinatraに移行しているので、フォームをネイティブに処理できるようにしています ( WufooGoogle Formsではありません)。

4

1 に答える 1

2

これを試して:

layout.haml (または erb など、テンプレートが入っているファイル) という名前のファイルを作成し、views フォルダーに配置します。これはサイトのレイアウトで、次のようになります (私は haml を使用しています)。

 %html
  %head 
    %link(rel="stylesheet" type="text/css" href="style.css")  
  %body
    %div.outer
      %div.inner
        = yield

魔法の部分は、=yield Sinatra がルートで呼び出すテンプレートをレンダリングする場所です。= は、テンプレートに Ruby コードを期待するように指示します。

たとえば、ルートが

get '/' do 
  haml :index
end

次に、/views/index.haml にあるテンプレートが挿入されます。テンプレートに /views/layout.haml のレイアウトをオーバーライドするように指示する場合は、カスタム レイアウトを使用することもできます。

お役に立てれば。

于 2011-03-22T14:51:03.650 に答える