で…思った。c=のコマンドを「1lineあたり1つ」にしちまえば楽なんぢゃね? と。
そうすると。例えばitem系があって。今までだと
item_input = : item_input.tpl item_confirm = : item_confirm.tpl item_fin = : item_fin.tpl
って3つのコマンド(とクラス)を作ってたのを。
まず
item_lines = : item_
という1コマンドに集約。
で。
実装としては
class item_lines extends フロント業務基底クラス { function execute_auth() { $this->push_clumpname('item'); $this->do_lines_process(); } } // end of class
で片付けて終了。
これで「入力 -> 確認 -> 完了」の画面遷移の実装終わり(笑
ついでに「編集 -> 確認 -> 完了」も片付く。
いやまぁclumpつくらにゃかんのだけどね。
ポイントは
・t=に、input/edit/confirm/fin(i/e/c/fとか略しても可ってことで)を入れて指示を出すこと
だけ。
do_lines_processhaはbase_model_richに実装するとして。
処理自体は…いったんrichにベタに書いて、必要なら後で切り出すかな?
ただの表示系もこれで片付きそう。editってことにして引数でkey渡せば片付くはず。
これで、定型的な作業からまたかなり解放されそうだなぁ。
確認画面がいらない場合は…なんか適当なスイッチ一つ作るかな。1メソッド追加のイメージかなぁ。
さて…実験かねて実装するかな!!
追記っつか本気でただのmemoだぉw
protected function do_lines_process() { $type = $this->get_cgi_request()->find('t'); //var_dump($type); switch($type) { case 'edit': case 'e': $this->edit(); break; case 'conf': case 'confirm': case 'c': $this->confirm(); break; case 'fin': case 'f': $this->fin(); break; default: $this->input(); break; } }
多分こんな処理だよねぇ。