伊藤清徳の垂直落下式ムーンサルトプレス伊藤清徳の垂直落下式ムーンサルトプレスPerlとかPHPとかMySQLとか...がんばっても8割だ。CommentINTER-MediatorというPHPアプリケーションフレームワークがあります。前から存在は知っていたものの、今回はじめて使ってみました。他のフレームワークと一緒に使うと便利なんじゃね?ってことで、Codeigniterで使ってみることに。?></table>のようなコードを書かなくてはなりませんでした。class="IM[テーブル名@フィールド名"></td></tr></table>こんなHTMLを書けば、Javascript制御でclassで指定されたテーブル名/フィールド名のデータを表示してくれます。複数レコードを呼ぶ設定にしている場合は、テーブルの行数もレコード数分追加してくれます。'PDO'),//デバッグレベルの設定false);こんな感じです。詳しくは公式サイトのドキュメントをご覧下さい。IM_Entry();が、HTMLのクラスセレクタを解析して、DBのレコード/フィールドを差し込むJavascriptコードを出力してくれるそんな仕組みになっているようです。Codeignireから使うには?上記の様に、INTER-Mediatorの定義ファイルは実に単純なしくみです。この定義ファイルを出力するコントローラーをつくれば、ページの出力がかなり簡単になるのでは?と思ったわけです。気をつけるポイントとして、INTER-Mediatorでは、PDOでMySQLなどへの接続を行なっているので、CodeigniterのDBドライバインスタンスをINTER-Mediatorで使うことはできません。CodeigniterでつかっているDBの設定はそのまま引き継ぎたい。そんなわけで、以下のようなコントローラーを作ってみました。'person')),null,$dbset,0);}}DB設定ファイルを呼び出して、今アクティブなDB設定をINTER-MediatorのPDO設定に入れているという簡単なしくみです。あとは、どのテーブルを呼び出すかなどを、GET/POSTのパラメータなどから呼び出せるようにしたり、YAMLなどで定義できるようにしておけば、1つのコントローラーで、複数のINTER-Mediatorの定義を作ることができるようになります。INTER-Mediatorの改造さて、定義ファイルを作成するコントローラーができたわけですが、これだけでは、ちょっとまずいところがありますので、INTER-Mediator自体の改造が少し必要です。GenerateJSCode.phpを改造します。