🤖
SinatraのテンプレートエンジンERBを使う
erbを使ってviewファイルにわけよう!
app.rbに大量に書き込むと管理しずらいため、viewsディレクトリーを作成してviewファイルにわけていきます。Sinatraで使用できるテンプレートエンジンにはhaml,erb,sass,markdown,slim,coffescriptなどがあります。(参考:Views / Templates)
erbを呼び出すにはerb :index
とファイル名をシンボルで渡してあげます。
app.rb
get '/' do
erb :index # ファイル名をシンボルで渡す
end
views/index.erb
<%= "Index" %>
app.rb
get '/about' do
erb :about # ファイル名をシンボルで渡す
end
views/about.erb
<%= "About" %>
ビューファイルの基本となる共通部分はviews/layout.erbに切り出します。
views/layout.erbは優先的に読み込まれるため、共通部分をlayout.erbに記述し、個別記述部分を yieldで呼び出します。
layout.erb
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="urf-8">
<title>test</title>
</head>
<body>
<%= yield %>
</body>
Discussion