CakePHP 1.3.14と2.0.5のリリース(訳)

訳 CakePHPコアチームはCakePHP2.0.5*1と1.3.14*2を素早くリリースできたことを誇りに思います。 2.0.4から合計で、90以上のコミットがあり、40以上の問題が解決されました。変更の完全なリストは変更ログページ*3で見ることができますが、以下に2.0.5で成さ…

Migrationsプラグインの実践的運用

CakePHP Advent Calendar 2011 CakePHP Advent Calendar 2011 : ATND 20日目の記事です。 19日目:akiyanさんCakePHPの「OrderdBehavior」と「TreeBehavior」はマジで使うべき : akiyan.com イントロダクション CakeDCが提供しているMigrationsプラグインは…

英語に自信がなくてもできるCakePHPへの貢献 -バグ報告編-

CakePHP(またはオープンソースプロダクト)のコアコードのバグ・不満・修正・設計について言及したい、しかし英語わからない、面倒くさい、なんとなく怖い、といった方向け。 導入 CakePHPへの貢献は色々な方法があります。バグ報告、パッチ、ドキュメント…

CakePHP 2.0.4がリリースされました(訳)

訳 この新しいバージョンは2.xブランチの重要なセキュリティ修正が含まれています。 できうる限り早くアプリケーションをアップグレードすることを強く推奨いたします。 CakePHPコアチームはCakePHP2.0.4*1を素早くリリースできたことを誇りに思います。 こ…

CakePHP 2.0.3 が焼きあがりました(訳)

訳 このCakePHPの新しいバージョンは2.0ブランチへの安定性の向上と、PHPUnit 3.6の完全な互換性、PHP5.4のサポートをもたらします。CakePHPコアチームは迅速にCakePHP2.0.3*1が利用可能になったことを誇りに思います。前のリリースからPHPの世界に多くのこ…

CakePHP 2.0.2 のリリース(訳)

訳 2.0ブランチの新しいバージョンがリリースされました。 これは2.0.1で導入された退行的なものの修正を含み、このバージョンを使っている人は可能な限り早くアップグレードすることを強くお勧めします。CakePHPコアチームは迅速にCakePHP2.0.2*1が利用可能…

CakePHP 2.0.1 を出しました(訳)

このバージョンは、マルチバイトの出力がほとんどのブラウザでズタズタになってしまうという致命的なバグがあります。 以下の記事を参考にして、2.0.2以降にアップデートしてください。 CakePHP 2.0.2 のリリース - 24時間CakePHP CakePHP2.0.1がリリースさ…

CakePHP 2.0 のリリース(訳)

訳 CakePHPコアチームはメジャーなバージョン番号のジャンプをアナウンスすることに興奮を覚えています。 CakePHP 2.0 安定版が出ました! 私たちはこのリリースに永久の時を注ぎ込み、このバージョンのフレームワークに素晴らしいアイデアの数々を成すこと…

新鮮な CakePHP 2.0.0-RC3 をお切り分けしました(訳)

訳 CakePHPコアチームはCakePHP 2.0.0-RC3*1をこんなにも早くお見せできることを誇りに思います。2.0.0-RC3は2.0.0の最終RC(リリース候補)となります。もしRCの予定期間の間に致命的な問題が無ければ、実に早いstableリリースを期待できるはずです。例の通り…

Mediaプラグインをアップロード処理の基本から学ぶ(2) - 制限, 検証

検証環境 Windows XP 32bit/Linux(CentOS) 64bit PHP >= 5.3.2 CakePHP 1.3.11 Mediaプラグイン nextブランチ(1.3系) PHPのアップロード処理 PHPのアップロードサポートでは、基本的にアップロードされたファイルの以下の情報が$_FILESdataに格納されます…

CakePHPの3つの大バージョン全てにリリースがありました

CakePHPコアチームはCakePHP 1.2.11、1.3.12 と 2.0.0-RC2をこんなにも早くお見せできることを誇りに思います。1.2.11と1.3.12はバグ修正・メンテナンスのリリースです。この3つのリリースはバージョン2.0のリリース候補の2度目の試作物を含み、大部分は修…

2chのスレに全レスする(12ホール目 1-100)

2ch

2chのスレとは 2chのWebProg板にある、CakePHPスレッドがあります。この記事時点での最新スレッドは 【PHP】フレームワーク CakePHP 12ホール目【笑】 になります。 注意 暇つぶし。基本的に質問形式のレスに回答していきます。*1 回答がついてあるものもお…

Mediaプラグインをアップロード処理の基本から学ぶ(1) - 導入

検証環境 Windows XP 32bit/Linux(CentOS) 64bit PHP >= 5.3.2 CakePHP 1.3.11 Mediaプラグイン nextブランチ(1.3系) イントロダクション davidpersson/media - GitHub Mediaプラグインとは、CakePHPのプラグインの一つです。 主にアップロードファイルを…

CakePHPアプリケーションの基本的な設計指針 (3) - カスタムfindタイプ -

イントロダクション 標準のfindの種類(first, all, count, threaded, neighbor, list)だけでは、ビジネスロジックに対応できないことがあります。 これに対するひとつのプラクティスとしては、カスタムfindタイプを定義することです。 この記事では、実際…

CakePHP 1.3.11 と 2.0.0-beta のリリース(訳)

CakePHPコアチームはCakePHP 1.3.11 と 2.0.0-betaをこんなにも早くお見せできることを誇りに思います。1.3.11は1.3ブランチのバグ修正・メンテナンスのリリースです。2.0.0-betaはAPIの安定化の開始と、また後方互換性のない変更をこれ以上するべきでないポ…

何も考えずにSlugRouteを生成する

SlugRouteとは 単純に、 /posts/view/127 といったURLでは見栄えがあまり良いとは言えません。 そこで、例えばブログのタイトル等を使って、 /post/何も考えずにSlugRouteを生成する といったURLにすることによって、SEO有効性も、URLを見た時の関心の引き具…

CakePHPアプリケーションの基本的な設計指針 (2) - キャッシュまわり -

イントロダクション CakePHPのキャッシュ機構は、 キャッシュストレージへのラッパー コアに統合されているもの の2種類があります。 前者はCache::read()などを使うもので、自由にキャッシュの操作が行えます。 後者のほうは、ビューキャッシュ、クエリキャ…

CakePHPアプリケーションの基本的な設計指針 (1) - URL設計 -

イントロダクション CakePHPはMVCデザインパターンを採用しており、基本的にこれに従った設計が基本となります。 しかし、ある程度開発が進んだところで、やっかいな設計の問題にぶち当たることは多いですよね。 そこで、よくある問題を取り上げて、設計の指…

誰でもできるサービスレイヤの実装

イントロダクション CakePHPでは標準でサービスレイヤを提供していません。 しかし、CakePHPはフレームワークとしてその基礎部分は十分に提供してると言えます。これはアプリケーション側で実装すべきでしょう。 規模が一定を超えるアプリケーションではサー…

KcaptchaプラグインでさくっとCaptcha実装

Kcaptchaプラグインとは このプラグインは、KCAPTCHAをものすごい簡単に使おうという趣旨のもと作られました。 単純な使い方ではほんとにあっという間に使うことが可能になります。 hiromi2424/CakePHP-Kcaptcha-Plugin - GitHub 上記でこのプラグインをMIT…

モデルの配列を管理するCollectionableプラグイン - Optionsビヘイビア

Collectionableプラグインとは モデルのメソッドの引数やプロパティには、大きな配列が用いられるものがあります。 この管理を適当にすると、コピペの嵐になりがちです。 しかし毎度毎度、その管理の為のコードを書くのは億劫ですし、ロジックのミスにより予…

Set::extract()の小洒落た使い方 case.1

たまには軽いネタを。もしかしたら連載するかも array( 'id' => 1, ), ), array( 'User' => array( 'id' => 2, ), ), array( 'User' => array( 'id' => 3, ), ), ); のとき、

CakePHP新春勉強会で発表してきました

発表 CakePHP新春勉強会 東京でCakePHP2.0について発表してきました。 初参加の方が多く幾分か緊張しましたが、今回は組長師匠のご指導により良いプレゼンにすることができたと思います。発表のスライドはこちら 英語版のほうから書いたので日本語のほうはち…

CakePHP2.0関連のドキュメントの和訳

翻訳開始のお知らせ 本家wikiで、CakePHP2.0に関するドキュメントが整備されてきています。CakePHP2.0 ドキュメント和訳 上記サイトで、順次訳していきます。よろしくお願いします。なお、放置していましたが、CakePHP1.3移行ガイドに関しましては、既存の翻…

よき祝日を - クリスマスケーキをお届けします - CakePHP 2.0開発版がリリースされました(訳)

By markstoryCakePHPコアチームはCakePHP 2.0.0-devをこんなにも早くお見せできることを誇りに思います。これは2.xブランチの最初のパッケージリリースとなります。2.0.0-devリリースは後方非互換な変更と新機能が多くあります。そして、まだ商用利用できる…

Re: 中間テーブルのcreated、modifiedについて

イントロダクション CakePHPのhasAndBelongsToMany(以下habtmと呼ぶ)機構は、期待する振る舞いをしないことがあります。 CakePHPはそのマニュアルで、habtmが複雑になったときについてこう言及しています: http://book.cakephp.org/ja/view/1034/Saving-R…

App::import() は凄い

App

CakePHP Advent Calendar2010、残りちょうど10日となりました。 15日目担当のひろみです。よろしくお願いします。 いんとろだくしょん どんなCakeアプリケーションでも使うといっても過言では無いのがApp::import()です。 直接使うことはなくても、ヘルパー…

バリデーションのベストプラクティス

イントロダクション CakePHPの使い方は多種多様で、もちろん一つのやり方が正解ということはありません。 しかし、CakePHPはフレームワークであるわけで、想定された使い方以外ではその真価をなかなか発揮できません。 CakePHPにおけるモデルは、ビジネスロ…

PHPMatsuriが開催されます

詳細など PHPMatsuriが開催されます - cakephperの日記(CakePHP, MongoDB, Lithium) や、 PHP Matsuri特設サイトをご覧になってください。 概要 10/2、10/3にかけてハッカソン形式で行われるこのイベントは、1年に一度しかないPHPのビッグイベントのうちの一…

CakePHP1.3.3、虹色アイス版がリリースされました(訳)

CakePHP開発チームはCakePHP 1.3.3[1]のリリースをアナウンスすることを嬉しく思います。1.3.3は1.3ブランチのメンテナンスリリースで、1.3にある機能のバグフィックスと最適化が含まれます。 先月におけるCakePHP 1.3.0のリリースから、50以上のコミットと…