Liquidを使用すると、レイアウトをネストできます。たとえば、私のサイトの デフォルト レイアウトはベース レイアウトから作成されます。
これはERBで可能ですか? もしそうなら、どのように?
私はGitHub PagesサイトをSinatraに移行しているので、フォームをネイティブに処理できるようにしています ( WufooやGoogle Formsではありません)。
Liquidを使用すると、レイアウトをネストできます。たとえば、私のサイトの デフォルト レイアウトはベース レイアウトから作成されます。
これはERBで可能ですか? もしそうなら、どのように?
私はGitHub PagesサイトをSinatraに移行しているので、フォームをネイティブに処理できるようにしています ( WufooやGoogle Formsではありません)。
これを試して:
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 のレイアウトをオーバーライドするように指示する場合は、カスタム レイアウトを使用することもできます。
お役に立てれば。