めたらーのブログ別館

test for include

作成 2017-01-26 | 更新 2017-01-31 01:24

include の方法を変えた。
_view/\w+\.dat があるならば
各種 _view/*.erb の中で <%= view_\w+_dat %> が使える。

具体的には
_view/foo.dat があるならば
_view/*.erb の中で <%= view_foo_dat %> が使える。

仕組みは report.rb の IsolatedEnvironment の method_missing を見ろ。
最初は Google analytics のコードを入れる。

追記 2017/01/30 月 18:32:23

これやめた。

理由

  1. site-index.erb, report.erb, sub-latest.erb に view_header_dat を入れると site-index.rb, report.rb, sub-latest.rb に 全く同じ method_missing を書くことになる。 設計のまずさが露呈する。
  2. 共通のメソッドを実装した親クラスを作って、そこに method_missing を作って継承する方式もある。 が、そういう最適化みたいなものを無視している部分が多々あるので今更感がある。 これやるんだったら、他のところでも共通部分を書き出せよとなる。
  3. erb に対応していないので、直接 erb ファイルに書いてしまえよと思ってしまう。 erbファイルを評価することはできるが、上の設計のまずさが響くので気分悪い。

こういうことやるんだったら、sinatra の layout.erb みたいなものを作るべきだったでしょ。
設計のまずさに目をつぶって追加するのはダメだ。

関連タグ

SBlog
小さいデバイスで表示される

Copyright © めたらー


一番上へ | 一番下へ