WindowsプログラマのWebアプリへの挑戦日記。あとパンとか。

Amazon Webサービスを利用するサイトをcakePHPで構築

1月 14th, 2008 Posted in cakePHP, PHP

せっかくのMVCなので、Amazon Webサービスからデータを取得する処理をModelとして実装してみました。

ModelではとりあえずfindAllのみをオーバーライドします。後で必要になれば必要な関数をオーバーライドするつもりです。Modelは以下の通り。

  1. class Aws extends AppModel {
  2.  
  3.     var $name = 'Aws';
  4.    
  5.     var $useTable = false;
  6.    
  7.     function findAll( $category, $keyword, $count ){
  8.         //データの取得処理を実装
  9.     }
  10. }

実際にAmazon Webサービスからデータを取得する処理は、「ITmedia エンタープライズ:特集:後編 WebサービスをAmazonで知る――PHPでECS 4.0を使うテクニック (1/5)」を参考にしました。

ModelでDBテーブルを使わない場合は、

  1. var $useTable = false;

と書くとDBテーブルにアクセスしないらしい。

controllerでは、対応するDB以外のModelを使う場合、

  1. class BillsController extends AppController {
  2.  
  3.     var $name = 'Bills';
  4.     var $helpers = array('Html', 'Form' );
  5.     var $uses = array( 'Bill', 'Aws' );
  6.    
  7.     //以下略
  8. }

のように使うModelを配列で宣言する。このとき対応するcontrollerに対応したDBも配列に入れることを忘れずに。

こちらもオススメ!

Trackback URL

Post a Comment