• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
実"戦"CakePHP Plugin
 

実"戦"CakePHP Plugin

on

  • 7,320 views

 

Statistics

Views

Total Views
7,320
Views on SlideShare
6,549
Embed Views
771

Actions

Likes
5
Downloads
20
Comments
0

5 Embeds 771

http://doda.jp 458
http://cms.doda.jp 151
http://www.slideshare.net 143
https://twitter.com 18
http://localhost 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    実"戦"CakePHP Plugin 実"戦"CakePHP Plugin Presentation Transcript

    • 実"戦" CakePHP Plugin Kenichirou Oyama (k1LoW) CakePHP勉強会#5@Tokyo 福岡サテライト 1
    • Agenda • About Me • 実"戦"で使うPlugin/Component • About 'futil' CakePHP勉強会#5@Tokyo 福岡サテライト 2
    • About Me CakePHP勉強会#5@Tokyo 福岡サテライト 3
    • About Me • name: – Kenichirou Oyama (id:k1LoW) • from Fukuoka JAPAN • membership: –  – 101000code/101000LAB – codecheck.in • “cake.el” maintener – CakePHP Emacs Minor Mode CakePHP勉強会#5@Tokyo 福岡サテライト 4
    • 実"戦"で使う Plugin/Component CakePHP勉強会#5@Tokyo 福岡サテライト 5
    • CakePHPで戦えますか? • 入社からCakePHP導入を主導して現 在まで3年、FusicのPHPチームのメ インフレームワークはCakePHPに。 • 実戦で使っているPlugin(   )や 導入済 Component、さらに今後実戦投入予 定のPlugin、Component( 投入予定   )を 紹介します。 CakePHP勉強会#5@Tokyo 福岡サテライト 6
    • 導入済 Debug Kit CakePHP勉強会#5@Tokyo 福岡サテライト 7
    • 説明不要 CakePHP勉強会#5@Tokyo 福岡サテライト 8
    • 導入済 Ktai Library CakePHP勉強会#5@Tokyo 福岡サテライト 9
    • 説明不要 CakePHP勉強会#5@Tokyo 福岡サテライト 10
    • cakeplus CakePHP勉強会#5@Tokyo 福岡サテライト 11
    • 導入済 cakeplus • id:cakephperさん作成のCakePHP拡張 Plugin – 自分がメインのプロジェクトでは常に使用 • 個人的には当たり前レベル • 特にバリデーション周りの拡張は重要 – 日本でのシステムの一般的なバリデーション メソッドの充実 – バリデーションエラーメッセージに__()が設 定できる • みなさん使っていますか? CakePHP勉強会#5@Tokyo 福岡サテライト 12
    • Search CakePHP勉強会#5@Tokyo 福岡サテライト 13
    • 投入予定 Search • CakeDC謹製の検索機能追加用Plugin • 使ってみたらため息がでるほど簡単に検 索機能を追加できた • つづきはWebで検索! Fusic blog 検索 CakePHP勉強会#5@Tokyo 福岡サテライト 14
    • TransitionComponent CakePHP勉強会#5@Tokyo 福岡サテライト 15
    • 投入予定 TransitionComponent • id:hiromi2424さん作成のページ遷移管理 コンポーネント • ここ最近のNo.1ヒット • 日本のみんなが大好き(?)な確認画面なん てすぐ作れる CakePHP勉強会#5@Tokyo 福岡サテライト 16
    • その他 CakePHP勉強会#5@Tokyo 福岡サテライト 17
    • その他 • QdmailComponent 投入予定 – メール定番のQdmail用コンポーネント • cakephp_exception_notifier 導入済 – PHPエラーが起きたらメール送信 • Fatty 導入済 – Gitリポジトリブラウザ。自作ながら個人的定番 • has_no 投入予定 – bindModel()/unbindModel()に疲れた方に • po 導入済 – poファイル編集Plugin。cakeplusとあわせて個人的 定番 CakePHP勉強会#5@Tokyo 福岡サテライト 18
    • About 'futil' CakePHP勉強会#5@Tokyo 福岡サテライト 19
    • About 'futil' • Fusic社内用CakePHP Plugin – FusicでのCakePHPプロジェクトか ら自分を中心に作成したライブラリ 群 – 汎用的なものよりも実戦的なものが 多い • 環境依存も多数 – 主に開発効率をあげるもの CakePHP勉強会#5@Tokyo 福岡サテライト 20
    • futilの代表的な機能の紹介 CakePHP勉強会#5@Tokyo 福岡サテライト 21
    • f コマンド CakePHP勉強会#5@Tokyo 福岡サテライト 22
    • $cake f OR $php cake/console/cake.php f CakePHP勉強会#5@Tokyo 福岡サテライト 23
    • Library init $cake f l CakePHP勉強会#5@Tokyo 福岡サテライト 24
    • Library init • PluginやComponent、PHPのライブ ラリまで選択するだけでインストー ルを行うコマンド • 必要ならばソースに設定を書き加え る • 現在インストール可能なライブラリ – debuglib, DebugKit, SimpleTest, cakeplus, po, has_no, simple_file, Search, TransitionComponent, Qdmail, Qdsmtp, wkhtmltopdf, Fatty CakePHP勉強会#5@Tokyo 福岡サテライト 25
    • Design init $cake f d CakePHP勉強会#5@Tokyo 福岡サテライト 26
    • Design init • CakePHPのデフォルトテンプレート を書き換えるコマンド – bakeコマンドで生成されるソース ファイルも変更 • 必要なイメージ画像やjs、cssまで セットする • 現在選択できるデザインは3つ – 簡単にテンプレートの追加が可能 • CakePHP1.3の機能を使用 CakePHP勉強会#5@Tokyo 福岡サテライト 27
    • Design init CakePHP勉強会#5@Tokyo 福岡サテライト 28
    • Design init CakePHP勉強会#5@Tokyo 福岡サテライト 29
    • Design init CakePHP勉強会#5@Tokyo 福岡サテライト 30
    • Design init Pluginとしてオープンソース化予定 ※急募:クールなPlugin名 CakePHP勉強会#5@Tokyo 福岡サテライト 31
    • Validation Pattern Behavior CakePHP勉強会#5@Tokyo 福岡サテライト 32
    • Validation Pattern Behavior • 同じモデルバリデーションを1つにま とめるBehavior – 例えば、一般ユーザの姓名のバリデー ションと管理ユーザの姓名のバリデー ションをそれぞれ書かなくてもよい • cakeplusにもコミットしている謎の プログラマ"Kagasawa-san"作成の実 戦に即したBehavior CakePHP勉強会#5@Tokyo 福岡サテライト 33
    • Validation Pattern Behavior <?php class UserModel extends AppModel { var $validate = array( // 姓 'family_name' => array( 'notEmptyFamilyName' => array( 'rule' => 'notempty', 'allowEmpty' => false, 'last' => true, ), 'notSpaceOnlyFamilyName' => array( 'rule' => 'space_only', 'allowEmpty' => true, 'last' => true, ), 'zenkakuOnlyFamilyName' => array( 'rule' => 'zenkaku_only', 'allowEmpty' => true, 'last' => true, ), ),          ); } CakePHP勉強会#5@Tokyo 福岡サテライト 34
    • Validation Pattern Behavior <?php class UserModel extends AppModel { var $actsAs = array('Futil.ValidationPatterns'); var $validate = array( // 姓 'family_name' => 'family_name_pattern',          ); } CakePHP勉強会#5@Tokyo 福岡サテライト 35
    • Validation Pattern Behavior cakeplusにpull request予定 id:cakephperさんお願いします! CakePHP勉強会#5@Tokyo 福岡サテライト 36
    • その他 • app/tmp内のキャッシュファイルをコマ ンドで一括削除できたり • .pdfをURLにつけるとpdf出力ができたり • sqlとモデルファイルを分離できたり • NetBeansハック用コメントを挿入できた り • ユーザ認証をコマンドで実装できたり CakePHP勉強会#5@Tokyo 福岡サテライト 37
    • まとめ • いろいろなPluginがものすごい勢いでリ リース。 – 特にgithubをチェック • 最近は「システム依存は Helper/Component/Behavior。汎用的な ものはPlugin」というようになってきた。 • (社内)ツールをまとめたPluginおすすめ – id:slywalkerさんの言っていたことは本当 – http://d.hatena.ne.jp/slywalker/20090523/1243059244 CakePHP勉強会#5@Tokyo 福岡サテライト 38
    • 告知 7月CakePHP@Fukuoka開催予定! ※スペシャルゲストも! CakePHP勉強会#5@Tokyo 福岡サテライト 39