2009-09-22
どこでも使いたくなる共通的な処理をどこに書こうか?
という事に迷った。
となっている。
どちらでも使いたいような処理はどこで書いたら良いのだろう。「モデルでコンポーネントを使うことはできない」とは明示的には書いてないけど、モデルの中でコンポーネントを使う - 酔いどれの徒然を拝見させてもらったところ、ちょっと裏技っぽい。
で考えた方法が以下のとおり。
これで
$this->MyComponent->method();
と実行できる。
委譲メソッドを書きたくないなら、コンポーネントでvendors配下のクラスをnewして、パブリックな変数に持っておけば
$this->MyComponent->vendors->method();
と、できるかもしれない。
今、どうしてもコントローラでバリデートしたいので、幾つかのバリデータをvendors配下のクラスに作って使っている。たぶん、モデルで使いたくなったときにも大丈夫だろう。
まあ、もちろん全部vendors配下に普通のクラスで作れば?という話もあるな。
サンワサプライ
購入: 7人 クリック: 138回
購入: 7人 クリック: 138回
コメント
トラックバック - http://d.hatena.ne.jp/daffy/20090922


