Maple: 純粋な仕様を忘れて Action 命名ルールにケチをつけてしまった件について
コメントに書いてましたがちょこっと長く、また面白みもあるのでエントリへ。
Maple: SD 3月号から 3.1.0 要素を足してみる
2.3. Action 名の命名規則P.56 (2) の Action 命名ルールにおいて、以下のように読み替えてください。
旧:「foo_bar アクションは modules/foo/bar/ ディレクトリ内の Foo_Bar.class.php 」
新:「foo_bar アクションは modules/foo/bar/ ディレクトリ内の Bar.class.php 」;; 個人的には modules/Foo/Bar.class.php になるものとばっかり
kunit / 2006-02-20 22:27 「modules/Foo/Bar.class.php」にしたいんですが、そうすると Foo_Bar と Foo_Baz が同じディレクトリにクラスを置くことになり、maple.ini が重なるんですよね・・・ これはもう3系の限界だと思って、ここまでにしてます。
言われてみれば確かにそのとおりだ!全然気づかなかった。
思いついてはいるでしょうが、action 名と共通の bar.ini、baz.ini という風にはどうなんでしょう?
foo_bar_baz というアクションなら
modules/
modules/Foo/
modules/Foo.ini
modules/Foo/Bar/
modules/Foo/Bar.ini
modules/Foo/Bar/Baz.class.php (action class Foo_Bar_Baz)
modules/Foo/Bar/Baz.ini
とでもすることで、コードは煩雑化するものの、各階層ごとに ini 設定も記述できるし、整理ができるような気がせんでもないです。
Action は最初のタイミングで既に決まっているので、foo, bar, baz の分割および異なったファイルを読むのは容易でしょうし。別途 module 全体にかかるような設定ファイルを modules/root.ini とか modules/maple.ini とでもしておけばいいでしょうが、
まあ、言われるとおり、3 系でやるとなると変化がでかすぎますわな。
この辺は generator で勝手にやってくれるようになった部分なので、このままでいこうが、いきなり変えようが、(下位互換とかはとりあえず考えないのであれば)、いろんな意味でどうとでもなる部分。ぱっと見 (ホントにぱっと見。さぼって grep すらしてない ;)) 関わる箇所は ConfigUtil, ActionChain の2つで、ここは base.ini で切り返れる箇所。うちでも patch とかなしでやろうと思えば、できますな。やろうと思えば。
トラックバック(0)
このブログ記事を参照しているブログ一覧: Maple: 純粋な仕様を忘れて Action 命名ルールにケチをつけてしまった件について
このブログ記事に対するトラックバックURL: http://hatotech.org/mt-admin/mt-tb.cgi/573

コメントする