« フレームワーク | メイン | ethnaのビューとテンプレート »

ethna

ethna で mysql のテーブル JOIN

正規化されたスキーマではテーブル結合は付きもの。
mysql が5以降であれば、VIEW を CREATE し ethna コマンドで add-app-object。
ただし、mysqlが4もしくは3の為 VIEW を作れない環境の場合アプリケーション側で結合。
例えば注文明細一覧取得のようなシチュエーションならこうする。
結合するテーブルで全列名を一意にする。 上記のようにオーバーライドする。
AppObjectのsearchProp()やAppManagerのgetObjectPropList()でWHERE句かORDER句で結合相手の列名を少なくとも1つ含めると上記が実行されFROM句とSELECT句が追加される。
例えば、ViewClass や ActionClass などで使う時。 私の場合、ページングなどの様々な集合検索メソッドを全てAppManagerに追加。

トラックバック

このエントリーのトラックバックURL:
http://www.remix.asia/cgi/mt/mt-tb.cgi/6501

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)