Amazon Webサービスを利用するサイトをcakePHPで構築
1月 14th, 2008 Posted in cakePHP, PHPせっかくのMVCなので、Amazon Webサービスからデータを取得する処理をModelとして実装してみました。
ModelではとりあえずfindAllのみをオーバーライドします。後で必要になれば必要な関数をオーバーライドするつもりです。Modelは以下の通り。
- class Aws extends AppModel {
- var $name = 'Aws';
- var $useTable = false;
- function findAll( $category, $keyword, $count ){
- //データの取得処理を実装
- }
- }
実際にAmazon Webサービスからデータを取得する処理は、「ITmedia エンタープライズ:特集:後編 WebサービスをAmazonで知る――PHPでECS 4.0を使うテクニック (1/5)」を参考にしました。
ModelでDBテーブルを使わない場合は、
- var $useTable = false;
と書くとDBテーブルにアクセスしないらしい。
controllerでは、対応するDB以外のModelを使う場合、
- class BillsController extends AppController {
- var $name = 'Bills';
- var $helpers = array('Html', 'Form' );
- var $uses = array( 'Bill', 'Aws' );
- //以下略
- }
のように使うModelを配列で宣言する。このとき対応するcontrollerに対応したDBも配列に入れることを忘れずに。
こちらもオススメ!