2020年11月11日水曜日

Sinatra のクラシックスタイルで Inline Template を使う方法

概要

Inline Template とはテンプレートの情報をアプリケーションのファイルに記載することができる機能です
本来テンプレート (ビュー) は views ディレクトリ配下に作成しますが簡単なアプリケーションなら Inline Template が使えます

環境

  • macOS 10.15.7
  • Ruby 2.7.1p83
    • sinatra 2.1.0

ポイント

クラシックスタイルの場合はクラス内で enable :inline_templates を呼び出す必要があります

サンプルコード

  • vim app.rb
require "sinatra/base"

class MyClass < Sinatra::Base
  enable :inline_templates

  get '/' do
    @message = "Hello"
    erb :home
  end
end

__END__

@@home
<html>
<head>
  <title>home</tile>
</head>
<body>
<h2><%= @message %></h2>
</body>
</html>
  • vim config.ru
require "./app"
run MyClass
  • bundle exec rackup config.ru

参考サイト

0 件のコメント:

コメントを投稿