目的:htmlにerbを埋め込みテストする
以下の環境にて実施
OS:Windows8.1
Ruby: v2.2.2 x64
Sinatra:v1.4.6
Sinatra-contrib:v1.4.2
前提条件
さて、Sinatraメインで行くと言っておきながらいきなり公約破り...
まぁいずれerb、は使うことになったであろうから仕方がない。
今後Web系をやっていくのに必要(?)と言うことで納得して欲しい。
1.ディレクトリ作成
以下に示す通りのディレクトリを作成する。
作業ディレクトリ(名称は何でもいい)
|-sinatraTest.rb
|-views(名称は左記の通りにディレクトリを作成)
|-view.erb
viewsディレクトリはどうにもsinatraのデフォルトのようです。
viewsディレクトリを作成せず、sinatraTest.rbとview.erbを同ディレクトリに置いた場合、
No such a fileと言った感じにエラーが発生します。
その際、「~/views/view.erb」にありませんと言った文言が表示されるので、
viewsがデフォルトであると検討を付けました。
2.ruby側のソースコード作成
以下の通りにソースコード作成する。
以前、以下の記事を見た方はそちらを改造追加する形で行うと楽です。
sinatraを使ってみた。
ソース1
3.erb側のソースコード作成
以下の通りにソースコードを作成する。
ソース2
4.軽く説明&テスト
簡単に説明すると、
sinatraTest.rbにて、erb側で使うものを定義し、view.erbにて利用している。
例)
sinatraTest.rbの「@title」部分が定義部分。
view.erbの「<%= @title %>」部分がhtmlソースへの埋め込み部分。
「erb :view」でview.erbで使うと記述している。
htmlの細かい部分は割愛する。
記事書いてから気づいた...hamlかslim使えばよかった...orz
以上!!
Sinatra:v1.4.6
Sinatra-contrib:v1.4.2
前提条件
- 上記に準ずる環境が構築されていること
以下の流れにて実施
- ディレクトリ作成
- ruby側のソースコード作成
- erb側のソースコード作成
- 軽く説明&テスト
さて、Sinatraメインで行くと言っておきながらいきなり公約破り...
まぁいずれerb、は使うことになったであろうから仕方がない。
今後Web系をやっていくのに必要(?)と言うことで納得して欲しい。
1.ディレクトリ作成
以下に示す通りのディレクトリを作成する。
作業ディレクトリ(名称は何でもいい)
|-sinatraTest.rb
|-views(名称は左記の通りにディレクトリを作成)
|-view.erb
viewsディレクトリはどうにもsinatraのデフォルトのようです。
viewsディレクトリを作成せず、sinatraTest.rbとview.erbを同ディレクトリに置いた場合、
No such a fileと言った感じにエラーが発生します。
その際、「~/views/view.erb」にありませんと言った文言が表示されるので、
viewsがデフォルトであると検討を付けました。
2.ruby側のソースコード作成
以下の通りにソースコード作成する。
以前、以下の記事を見た方はそちらを改造追加する形で行うと楽です。
sinatraを使ってみた。
ソース1
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# encoding: utf-8 | |
# File Name: sinatraTest.rb | |
# Create Day is 2015/05/08 | |
# Last Update Day is 2015/05/08 | |
# Gem List | |
gem 'tilt', '1.4.1' | |
# Require List | |
require 'sinatra' | |
# sinatra reloader is classic type | |
require 'sinatra/reloader' if development? | |
require 'tilt' | |
get '/' do | |
@title = "Hello world!!" | |
@text = "erb Test!!" | |
erb :view | |
end |
3.erb側のソースコード作成
以下の通りにソースコードを作成する。
ソース2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<html> | |
<head><title><%= @title %></title></head> | |
<body> | |
<h1><%= @title %></h1> | |
<p><%= @text %></p> | |
</body> | |
</html> |
4.軽く説明&テスト
簡単に説明すると、
sinatraTest.rbにて、erb側で使うものを定義し、view.erbにて利用している。
例)
sinatraTest.rbの「@title」部分が定義部分。
view.erbの「<%= @title %>」部分がhtmlソースへの埋め込み部分。
「erb :view」でview.erbで使うと記述している。
htmlの細かい部分は割愛する。
記事書いてから気づいた...hamlかslim使えばよかった...orz
以上!!