2017-06-29 15 views
1

私はいくつかのグーグルを行いました。私はRubyのテンプレートエンジンがerbだと理解していますが、テンプレートエンジンはどういう意味ですか?テンプレートエンジンとは何ですか?

+0

実装面では、Railsは[ERB]からその '.erb'ハンドラを切り替える:これを試してみて、結果を確認/libdoc/erb/rdoc/ERB.html)を[Erubis](http://www.kuwata-lab.com/erubis/)から[erubi](https://github.com/jeremyevans/erubi)に変更してください。これらはすべてERBの '<% ... %>'構文と互換性があります。 – Stefan

答えて

3

テンプレートエンジンは、html形式のrailsアプリケーションの実際のロジック/変数を表すものです。エンドユーザーは探しているものを手に入れることができます。

@usersオブジェクトがあり、各レコードをループし、ウェブページの各ユーザーの詳細の名前を表したい場合は、考慮してください。単純なhtmlにはそうする方法がありません。そこでerbやその他のテンプレートエンジンが登場します。

これらのエンジンは、変数、関数、ユーザー定義の構文の値をHTML形式に変換してエンドユーザーに表示します。

希望すると、これが役立ちます。

4

テンプレートは、通常、木材または金属の薄板で構成され、機械的作業のゲージまたはガイドとして機能し、パターンを決定または提供します。モデル:
- プログラミングの世界で辞書の定義

、テンプレートは、共通のパターンを共有する任意の反復作業のフレームワークです。共通パターンをテンプレートとして抽出して、変更/動的データを埋め込み、作品のコピーを作成できるようになりました。

:あなたは病院やGovtで受け取ったフォームに気付きます。動的データを書き込むための空白フィールドがあるオフィス。最後に、アプリケーションのコピーを入手します。そうでしょう?

これを容易にするために、Rubyという標準ライブラリのエンジンとしてERBがあります。

手を汚してみましょう。 http://ruby-doc.org/stdlib(

require 'erb' 

your_template = <<-TEMP 
    This document is a template for <%= title %> <%= full_name %>. 

    Now we are going to have a line written <%= n %> times. 

    <% n.times do %> 
    This line must repeat <%= n %> times. 
    <% end %> 

TEMP 

title = 'Mr.' 
full_name = 'Shiva Gaire' 
n = 5 

generated_doc = ERB.new(your_template).result 

puts generated_doc 

出力

This document is a template for Mr. Shiva Gaire. 

Now we are going to have a line written 5 times. 

This line must repeat 5 times. 


This line must repeat 5 times. 


This line must repeat 5 times. 


This line must repeat 5 times. 


This line must repeat 5 times. 
+1

素敵で優雅な – illusionist

関連する問題