symfony1.1以降で開発する際に必ず守ること箇条書き
- schema.yml
- 命名規則
- 変数、関数名は camelCase で
- app.yml の変数名は snake_case で
- コメントなしでもわかるような名前をつけて、わかりきったコメントは書かない
- コーディングルール
- 全体
- サーバ
- utf-8 で統一
- アクション
- アクションにビジネスロジックを書かない
- アクションに criteria を書かない
- モデル
- lib/model/om、map、lib/form/base の下はさわらない
- DB まわりのビジネスロジックは lib/model/xxxPeer.php に書く
- レコード単位の処理は lib/model/xxx.php に書く
- doSelectRS() で取得したレコードセットは populateObjects() を使ってオブジェクトに変換すると楽
- doSelectRs() で取得したレコードセットが 2 箇所以上から利用される場合は、レコードセットに合わせたモデルを作成し利用する
- DB の定数は xxxPeer.php に宣言
- 複数のモデルに共通の処理を挿入する場合は、sfPropelBehavior を利用する
- フォーム
- Form クラスを必ず使う
- Form まわりのビジネスロジックは lib/form/xxx に書く
- 親子関係のテーブルを Form で利用する時は embedForm を使う
- input タグの name は xxx[xxx] の形式で書く。bind する時のロジックが短くなる。$this->widgetSchema->setNameFormat('xxx[%s]') を使う
- sfUser を使いたい時は、sfContext::getInstance()->getUser() を利用する
- バリデーター
- 複数フィールドのバリデートには setPreValidator()、setPostValidator() を使う
- テンプレート
- routing.yml
- get パラメーターのチェックは routing.yml で
- エラー
- 400、500、unavailable.php の 3 つが設定対象
- 保留
- ヘッダーコメント
[code] /* * 概要 * * @package xxx * @subpackage xxx * @author mei sei * @copyright (c) 2009 company_name inc. * @version SVN: $Id$ / [/code]
↓↓↓は本屋で売ってる唯一の symfony 本。始めは買わなかったけど、結局買った本。ないよりは全然まし。
symfony徹底攻略 [PHP徹底攻略シリーズ] (PHP徹底攻略シリーズ)
posted with amazlet at 09.03.21
前田 雅央
ソフトバンククリエイティブ
売り上げランキング: 208898
おすすめ度の平均:
Symfony1.2には未対応
2冊目に買うべき本
この本は酷い
誤植が・・・