CakePHP1.2 Behaviorでモデルのメソッドキャッシュを行う
CakePHP1.2から新たにBehavior(振る舞い)クラスが実装され、モデルに共通の処理を定義することが可能になりました。
今回はBehaviorを使ってモデルの各メソッドの結果を自動的にキャッシュするクラス(CacheBehavior)を検討してみました。
CakePHPでは標準でビューキャッシュをサポートしていますが、Cacheクラスを利用することで簡単にキャッシュ機能を組み込むことができます。
DAY8: symfonyでAJAXを使う
これまでのおさらい
ようやくそれらしいアプリケーションができてきた感があります。でも、まだ8日目なんですね。。
本日はAJAXをsymfonyでやってみるということです。ではがんばってチュートリアルを実践してみます。
DAY7: モデルとビューの操作
これまでのおさらい
ようやく6日間がおわったというところです。本チュートリアルの目的はsymfony1.0との違いを確認したいということだったのですが、sfFormを使う時点でかなり違ったものになった印象を感じてしまいます。
ただ、フォーム処理を切り分けるという意識がsymfony1.0のころに比べてはっきりしているため以前あったバリデーションをアクションでやりくりしなくてはいけない場合があった違和感はなくなりました。
総合的にみて、symfony1.2のsfFormはWebアプリケーションを開発するためにはフォームヘルパーよりも数段優れている印象を受けます。
Read more
DAY6: セキュリティーとバリデーション
5日目までのaskeet
5日目でsfFormを使ったログインフォームの実装を行いました。
本家では6日目にバリデーションを行うのですが、すでにsfFormで設定を行っているので、確認しつつ進めていきましょう。
軽量フレームワークCodeIgniter
PHPフレームワークと言えば、symfony・CakePHP・ZendFrameworkなどが有名です。
弊社でもsymfony・CakePHPを中心に開発を行っているのですが、ちょっとしたアプリケーションや小案件にこれらのフレームワークを導入するのも逆にコストが増えるケースもあるかと思います。
そこで、軽量で導入が容易なフレームワークを1つ習得していれば、いろいろと融通が効くと考え、CodeIgniterを学習しながら簡易プロジェクト管理システムを作成しました。
今回は初めて使ったCodeIgniterの感想やメリット・デメリットなど感じたことを書いていこうと思います。
(あくまで個人的な意見です)
Webサービスを利用したAJAX郵便番号検索
郵便番号から住所を検索したり、住所から郵便番号を検索するTipsは様々なサイトで公開されています。
大体の場合は、郵便事業株式会社様(旧日本郵政公社)が提供しているCSVデータをDBに保持して・・という形式が多いようです。
確かに自前でDBを用意して検索アプリを作成し、郵便番号情報を常に最新にメンテナンスできる環境があれば、最善の方法です。
ただ、「そこまでは必要ないけども、もっと簡単に実装したい」という場合を想定して、WEBサービスを利用し簡単に実装するサンプルを作成しました。
今回のサンプルはこちらで確認できます。
よくある住所欄の入力フォームで
・郵便番号を入力するとオートコンプリート形式で該当住所を表示
・住所をクリックすると入力フォーム内の住所欄に値を代入する
というものです。
DAY5: ログインフォームとパジネーション
ログインフォームとパジネーション
4日目ではリファクタリングを中心に作業を行いました。
5日目の内容はログインフォームの実装と質問ページにページ送りの機能(パジネーション)を実装していきます。
symfony1.0からバージョンアップするために役立つ情報
symfony1.2のbeta1がリリースされ、本年度中の正式リリースに向けて開発が進んでいます。
そして、この機会にsymfony1.0からsymfony1.2へ移行していこうという方も多いかと思います。
そういう方のために情報をまとめてみました。