Web系の仕事してて、これだけ「ruby」という単語を目にすることが多く「Ruby on railsを真似たフレームワークが・・」と耳にするのでちょっとカジっとかないと、という訳ではじめましたruby。
個人的に「phpとperlとjavaしか知りません」だと対外的に格好つかないかなと思ったわけです。
で、まだまだ勉強し始めなのですが、
WEBアプリを作る際にruby(RoRではない)でロジックとビューを分ける方法について。
例えばphpでは、
// ロジック側(logic.php)とロジックを書いておけば、ビューでは
<?php
$a = "foo";
$b = "bar";
require "view.tpl.php";
// ビュー側(view.tpl.php)とできます。
<html>
<body>
$aの値はです。
$bの値はです。
同じようなことをrubyでやるには、
1)ヒアドキュメントを使う
// ロジック側(logic.rb)
a = "foo"
b = "bar"
print "Content-type:text/html\n\n"
print <<__HTML_END__
"<html>
<body>
$aの値は" + a + "です。
$bの値は" + b + "です。"
__HTML_END__
2)ERBを使う
// ロジック側(logic.rb)としてビュー側で
require "erb"
print "Content-type:text/html\n\n"
a = "foo"
b = "bar"
tplFile = "view.tpl.html"
erb = ERB.new(File.read(tplFile))
erb.run
// ビュー側(view.tpl.html)とやります。
<html>
<body>
aの値は<%=a%>です。
bの値は<%=b%>です。
というか、もっとスマートな方法あれば教えてください!
もっと勉強します。。
以上っっっっです。
0 件のコメント:
コメントを投稿