ウェブサービスを作っています。

CakePHP

CakePHP 用 Exception Notifier ご使用中の方は、早急にバージョンアップしてください

1/20 に更新したバージョンは、コンポーネント内にバグがあるため、動作しなくなっていました。 (アプリケーション内でエラーが発生してもメール通知されません) 早急に最新版に更新してください。 milk1000cc/cakephp_exception_notifier · GitHub 今後この…

isUnique がバグっている件

1 リクエスト中に複数レコード保存していて cacheQueries を使っていると、validation の isUnique ルールが効かないことがあります。 テーブル定義 CREATE TABLE users (name VARCHAR(255)); app/models/user.php array('rule' => 'isUnique')); } app/con…

Exception Notifier コンポーネントを GitHub で公開しました

gist で細々と公開していた CakePHP 用 Exception Notifier コンポーネントですが、意外と需要があるようですので GitHub で公開しました。 milk1000cc/cakephp_exception_notifier · GitHub さらにいろんな人に使っていただいたり、fork していただけたら幸…

Exception Notifier コンポーネント更新

301.textile CakePHP のアプリで、エラーが発生したときにメールで知らせるコンポーネントです。 関連: Exception Notifier コンポーネントを公開 - milk1000cc 今回から FatalError も捕捉できるようになりました。 あまりきちんとテストしていなくて適当な…

DEBUG 値が 0 でも、DB スキーマキャッシュが行われないようにする

CakePHP で本番運用する際は、DEBUG 値を 0 にするのがふつうだと思いますが、この場合、デフォルトで DB スキーマのキャッシュファイルが生成されます。 このため DB スキーマを変更した際は DEBUG 値を 1 以上にするか、app/tmp/cache/models 以下のファイ…

paginator パラメータのコロン区切りをやめる

CakePHP のページネーション機能を使うと、/hoge/fuga/page:2 のようなコロン区切りパラメータのリンクになってしまいます。 これは気持ち悪いので、何とか /hoge/fuga?page=2 にする方法を考えました。 やはり気になっている方はいるようです。 ページが見…

Exception Notifier コンポーネントを公開

例外発生時にメールで知らせる CakePHP のコンポーネント Exception Notifier を作りました。 Rails の Exception Notification みたいなやつです。 まだまだβ版ですが、gist に置いておくので、適当に fork してください。 http://gist.github.com/98770 使…

CakePHP 勉強会

金曜日の話ですが、CakePHP 勉強会に行ってきました。懇親会まで含めてこういった勉強会に参加するのは初めてでしたが、いろんな方と話すことができて、楽しかったです。 以下、感想です。 ・CakePHPを業務で導入する (shin1×1 さん) $this->Model->save($th…

sanitizeSql

CakePHP は基本的に自動で SQL インジェクション対策をしてくれるんですが (比較演算子インジェクションの問題がありますが)、自力でエスケープしたい場合もたまにあります。 ということで、多次元配列に対応したエスケープメソッドを作りました。

CakePHP の VALID_NUMBER 定数

バリデーションとかで使うやつですが、

Model::cacheQueries

CakePHP は同一クエリの場合、デフォルトでは2回目以降が実行されないようです。 まあ、ふつうはこれで問題ないのですが、たとえば $this->Hoge->find(array('del_flg' => 'false'), null, 'rand()');のような文は、何度も呼び出して、違う結果を得たい場合…