独自タグを定義する

MTとかで使ってる、ビューの独自タグについて。
例えば
<!-- do_something -->
こんなコメントを自動解釈して、実行してくれる感じ。
これをRuby的に書くなら、どうするか。


def set_view
template = get_template #これで、ビューのテンプレートを取得する(ものとして下さい)
my_tags = ['<!-- do_something -->',
'<!-- show_something -->',
'<!-- play_something -->']

my_tags.each {|tag|
template.gsub(tag, convert(tag))
}
end

private
def convert(tag) #タグを変換、実行
case tag #実際の処理はタグによって異なる
when '<!-- do_something -->'
do_something
when '<!-- show_something -->'
show_something
when '<!-- play_something -->'
play_something
end
end


何となく、冗長な気がしないでもない…
my_tagsはハッシュにして、タグをキー、実行されるメソッドを値とし、evalとかで値を評価して実行してしまえばいいのかも。
独自タグを配列orハッシュでまとめるのはありだと思うんですが。
まあ、今回はテンプレートはRHTML直にするので、何かの時用メモ。
プログラム | comments (12) | trackbacks (0)

Comments

Snow boots | 2013/11/12 05:22 PM
harvest dailyside | 独自タグを定義する
peuterey outlet | 2013/11/12 05:22 PM
harvest dailyside | 独自タグを定義する
Cheap Oakley Sunglasses | 2013/11/12 05:22 PM
harvest dailyside | 独自タグを定義する
Sac Longchamp | 2013/11/12 05:23 PM
harvest dailyside | 独自タグを定義する
Cheap Uggs Clearance | 2013/11/12 05:23 PM
harvest dailyside | 独自タグを定義する
Mulberry Uk Outlet | 2013/11/19 03:56 PM
harvest dailyside | 独自タグを定義する
Canada Goose outlet | 2013/11/19 03:56 PM
harvest dailyside | 独自タグを定義する
billig Canada Goose | 2013/11/19 03:57 PM
harvest dailyside | 独自タグを定義する
Woolrich parka | 2013/11/19 03:57 PM
harvest dailyside | 独自タグを定義する
hijrcpqn | 2013/12/04 12:19 PM
harvest dailyside | 独自タグを定義する
[url=http://www.g1eh028b90w275151lp38usnc8trksv7s.org/]uhijrcpqn[/url]
hijrcpqn http://www.g1eh028b90w275151lp38usnc8trksv7s.org/
<a href="http://www.g1eh028b90w275151lp38usnc8trksv7s.org/">ahijrcpqn</a>
www.pfaf.org/user/Habitats.aspx | 2013/12/10 07:31 PM
harvest dailyside | 独自タグを定義する
ベビーカー | 2013/12/31 05:26 AM
Renegade Who May Be Concerned About men.
ベビーカー http://www.kharid2net.com

Comment Form

icons:

Trackbacks