CakePHP Advent Calendar2010 も折り返し点を過ぎました。CakePHP Advent Calendar2010は、ネタの調整などはしていないのですが(してないよね(^^;?)、参考になる話ばかりだし、まだネタがかぶったという話は聞かないので正に「君の当たり前に僕らは感嘆させられるんだ」ですね(^^;。 では、13日目の担当と言う事で...。 *この記事の内容はCakePHP1.3での話になります。 CakePHP1.2までは、Datasourceは app/models/datasources/ 以下に配置しないと動作させることが出来ませんでしたが、CakePHP1.3からはプラグイン配下のDatasouceを使用することが可能になりました。 これは個人的にとても嬉しい修正だったのですが、このあたりの情報をWeb上にあまり見かけないのでまとめてみました。 Cake
CakePHP には外部のリソースを呼び出すための便利なフレームワークがある。DataSource を実装すれば、データベース以外のリソース(たとえばテキストファイルなど)がモデルとして利用できるようになる。 http://d.hatena.ne.jp/gapao/20090521/1242907727 を参考に、配列をモデルとして定義するための DataSource を作ってみた。下記の ArraySource を利用することでモデル内に定義した配列 $values の値を find() 関数で取り出せる。実用的とはいえないかもしれないが、作り込んでいったら面白いものができそうな気がする。 models/datasources/array_source.php: <?php class ArraySource extends DataSource { function calculate
http://bakery.cakephp.org/articles/view/csv-datasource-for-reading-your-csv-files を参考にしました。 ここではあるディレクトリを参照するデータソースを作ります。 とりあえずapp/config/database.phpに以下を追加 <?php var $dir = array( 'datasource' => 'dir', 'root' => '/path/to' ); ?> ファイルを作成します データソースのクラスファイルはapp/models/datasources以下に_sourceを付けた名前で保存し、 DataSourceクラスを継承して作ります。 app/models/datasources/dir_source.php <?php class DirSource extends DataSou
CSVをデータソースとして扱えるようにする CsvSource というプラグインがあります。 コントローラーの $uses にCSVを使うモデルを設定したら、Bake で View を焼く際にエラーが出るようになってしまいました。 CsvSource とは http://github.com/cakephp/datasources CakePHP の github に datasources というリポジトリがあります。 CsvSource をはじめ、いくつかのデータソースが扱えるプラグインになってます。 環境 Mac Mac OS X 10.5.8(Leopard) MAMP 1.7.2 CakePHP 1.3.0 php 5.2.6 エラーの状況 <?php class Csv extends AppModel{ public $useDbConfig = 'csv'; } CsvSo
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く