処理はPage(Action)クラスに書く。いわゆるAction肥大化。https://github.com/nishimura/laiz2composerの使い方を見るのも兼ねてサンプルアプリを置いたのですぐにインストールできるはず。Laiz少しだけ使っていたLaunchpadはやめてGithubに変更。Launchpadってmixiみたいに段々見にくくなってるような...。ローカルのリポジトリとLANのリポジトリとgithubとこんがらがりながら使ってみている。あとでやるやりたいこと。そのメソッドをどのように呼びたいのかということをDoc...アクションのテスト2008-02-04フレームワークのメール処理Laizphp.iniでmbstringの設定を何もしていないときに日本語メールが正しく処理されないのを解決しなければ。フレームワーク起動直後にmb_language()を呼ぶのが適当だろうか。Laiz今までDBにビューを作っていたものを、やっぱりDBをいちいち変えるのが面倒なのでormで対応することにした。実際は...O/Rマッパーに疑似ビュー機能を追加した2007-11-12O/Rマッパーにビューに機能が欲しくなってきたLaizDBの更新ってめんどくさいよね。システムを動かしながらソースは更新できる。システムを動かしながらDBは更新できる。これを同時にやれば、DB修正ありの更新をシステム停止せずにできる。新しいDBデータ一覧表示が欲しくなった場合...O/Rマッパーにビューに機能が欲しくなってきた2007-11-03複数のアクションクラスでの共通部分Laizアクションクラスは使い捨てだけれど、同じような処理を複数のページで使いたい場合って結構多い。同じならいいんだけれど、微妙に違うような。Methodパターンを使えば解決するような感じの。Laiz最初にmapleを参考にしただけあって、LaizではDIContainerでフレームワークのコアクラスが管理されている。getColumnMeta()して型情報を設定するようにしてみた。書いたのに全部直せてなかった。三カ所に処理が分散していたのだ。ひとつにまとめようとリファクタリング。微妙に1,2行違っていたりしてちょっとめんどくさかっ...リファクタリング2007-06-16設定ファイル変数を使ったメソッドインジェクションできたLaizこれでオブジェクトのコンストラクタ引数にメソッドの実行結果を使えるようになった。Request....設定ファイル変数を使ったメソッドインジェクションできた2007-06-15複雑なメソッドインジェクションLaizあるコンポーネントのメソッドの戻り値を別のコンポーネントのコンストラクタ引数にしたい。これはiniファイルでは限界かも。安易に思い付くのは、シェルスクリプト的なもの。フレームワークなぜmapleを参考にしていたのにフィルタで全てを構成するようにしなかったのだろう・・あまり考えたことないな。初めはguesswork的な軽いものを作ろうと思っていたからだろう。改良を重ねていくうちに設定が増える増える・・。class...maple式フィルタチェーンをやめた理由2007-06-09validation拡張機能追加Laiz基本的な入力チェックはフレームワークに入ってるんだけど、もっとアプリ独自のチェックもバリデータでチェックしたい。フレームワークの基本クラスをmaple流に拡張できるようにはしていたものの、バリデータクラスは普通にnewしていた。設定ファイルにバ...validation拡張機能追加2007-06-01設定ファイル読み込み機能を追加したLaizあってもいい機能なのに今まで必要なかったので付けてなかった。ディレクトリ共通設定だけではまかなえない部分が出てきたのでincludeセクションを追加。configs/config.iniとやると他の設定ファイルを読み込む。列挙したい列名...PHP5で変数を自動設定すると予想以上に便利2007-05-16変数設定の簡略化Laizオブジェクトからテンプレート変数を設定できるようにした。HTML_Template_Flexyせっかくフォームを操作できるflexyを使っているのに、ループ中だと使えないのが困る。やらなくちゃいけない。{loop:var}は独自拡張なので{foreach:key...ループ中のフォーム操作2007-02-15アクション設定ファイルによるビューの変更Laiz思ったより難しい。アクションは自由にチェーンがかけられるわけで・・複数のアクションのうち一つでもビュークラス書き換え設定が存在すれば、その時点でビューが書き換わってしまう。その後アクションチェーンによって普通のアクションが指定されることも...アクション設定ファイルによるビューの変更2007-01-28タイプヒンティングからのインジェクションとインターフェースLaizすごく根本的な問題に。タイプヒンティングからコンポーネントを自動設定する場合、タイプヒンティングにインターフェースや親クラスが使えなくなる。どこかにコンポーネント生成に関する情報があるはずで、それをタイプヒンティングに持ってきたらこうな...タイプヒンティングからのインジェクションとインターフェース2007-01-28タイプヒンティングからのインジェクションとインターフェースの続きLaizコメントが長くなるとみにくい・・。最近はタイプヒンティング自体ほとんど利用価値がないような気がして仕方がありません......。私はアクションクラスでよく使ってるんですよね。対するアクセスをOtherActionに切り替えられるようになった。これだけの機能なのにかなり時間がかかった・・。活動してないわけですが・・・今見たらGoogleRankが3になってた。リンクされてないのになぁ。OtherActionの設定があるとき、OtherActionに直接アクセスするとエラーを表示させるようにした。このエラーはパス探索中に発生するわけだけれども、これをどうやってビューまで持って行こうか悩んだ。ErrorStackとか...アクションマッピング設定とエラー制御2007-01-17define()の削除Laizフレームワーク設定をdefine()からiniファイルに移した。時間がかかった・・・。テストケースも修正しなきゃならなかったし。時間をかけて修正して、何が便利になったわけでもなく。リファクタリングって大変だ。あとクラス名をPEAR方式にしたいけ...define()の削除2007-01-16モノリシックコアとマイクロコアLaiz現在はパス名解決のために、全てPathUtilsクラスを通している。このクラスに処理を追加するだけで、理想の動作(URLとディレクトリ構造の分離)を実現できるのではないだろうか。Laizhttp://f.hatena.ne.jp/n314/20061206161331前よりも詳しく書いてみた。コンテナ周りの書き方がよく分からない。Laiz今のフレームワークはちょっとやりすぎた。$_Component;って書くだけでコンポーネントが代入されるのはやっぱり良くない。PHP4ならこれで良かったんだけど、PHP5にするとprivateで宣言するので使う機会がなくなる。Laiz依存関係を減らそうと思ってクラス図を書いてみたら、非常にまずいことになってた。最初にコンテナにクラスを全部登録して必要になれば使えばいいやって思ってたから、依存関係がありすぎる。複数のクラスにまたがる処理をまとめる場合って難しいな。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。