タグ

cakephpに関するbanana-umaiのブックマーク (14)

  • CakePHP2 betaとSymfony2.0をパフォーマンス比較しました - cakephperの日記(CakePHP, Laravel, PHP)

    昨日、Symfony2.0がリリースされたので、早速パフォーマンス計測しました。 Symfony2.0もCake2betaと同じデータ量のtableにアクセスして、同じ1レコードを取得して表示する画面を計測しました。 計測は下記のように同じツール、同じオプションを使ってます。 siege -c 10 -b -t 3S 詳細なテスト環境は、下記ブログに書いてあります。データ量なども一緒。 http://cake.eizoku.com/blog/2011/07/27/performance-check-of-cakephp1-3-11-and-cakephp2beta/ 計測は何回か実行した中央値ぐらいの結果をピックアップしました。ですので両方ともキャッシュファイルは生成された状態の計測となっています。 [追記] 後藤さんからSymfony2のpullリクエストもらったので、再度計測しました。

    CakePHP2 betaとSymfony2.0をパフォーマンス比較しました - cakephperの日記(CakePHP, Laravel, PHP)
  • CakePHP CSVでインポート/エクスポートするビヘイビア - 130単位

    deeeki/cakephp-csvio - GitHub https://github.com/deeeki/cakephp-csvio つくってみました。 これは何 CakePHP用のビヘイビア テーブルのデータをCSVでインポート/エクスポートできる 出力されるCSVの文字コードはShift-JIS そもそもExcelでデータ編集しやすくするためにつくった 使いかた 準備 GitHubからダウンロード 必要なファイルを利用するアプリへコピー*1 インポート元/エクスポート先を確認 デフォルトのインポート元はconfig/csv/以下 デフォルトのエクスポート先はtmp/csv/以下 ビヘイビアのsetup()内を編集で変更できる エクスポート先ディレクトリに書き込み権限を与える インポートする場合はconfig/csv/テーブル名.csvを用意 ビヘイビアのセット <?php //な

  • CakePHP UNIONして取得したデータをページングする方法

    別にUNIONに限らず、生のSQLを投げて取得したデータは、何でも同じようにページングできる。 肝 ページングのために利用する新しいモデルを作成する そのモデルでは$usetable=falseに設定し、既存のテーブルとは関連付けしない。 そのモデルにおいて、paginate関数とpaginateCount関数をoverrideする。 コントローラー側では、既存のpaginateと同じ利用の仕方をする。但し引数として設定しても無視する項目がある。 サンプルコード 下記のサンプルコードはPHPMyScrumでのタスクとストーリーの横断検索機能の実装。 app/models/search.php class Search extends AppModel { var $useTable = false; var $base_sql = " SELECT ? as itemtype, resol

    CakePHP UNIONして取得したデータをページングする方法
  • PHP on the Cake !: CakePHP のディレクトリ構成を変更する

    PHP on the Cake ! CakePHP のインストール、設定法、使用例。愛すべき駄目プログラム言語・PHP による Web アプリケーションの品質向上の為に。 2008年3月24日 システムを公開する場合に、CakePHP のコアライブラリやアプリケーションコード(コントローラ、モデル、ビューなど)は公開しない様にディレクトリの構成を変更します。 CakePHPの初期状態では下記のようなディレクトリ構成になっています。 /cake |-app |-config |-controllers |-models |-plugins |-tmp |-vendors |-views |-webroot(Web公開用ディレクトリ) .htaccess index.php |-cake(CakePHP コアライブラリ) |-vendors .htaccess index.php 共用サー

  • CakePHPでログやキャッシュの保存場所をapp外に変更する | ZiSTA

    今回のミッション(ゴール) ログやキャッシュのファイルの保存場所をappディレクトリの外に配置したい。 今回は以下のようなディレクトリ構成にしました。 releases app(アプリケーション/ここをバージョン管理する) webroot(ドキュメントルート/Web公開ディレクトリ) shared(共有用/ここはバージョン管理しない) cake(CakePHP体) uploads(ユーザーがアップしたファイル置き場/Web公開ディレクトリ) cache(キャッシュ) logs(ログ) tmp(その他のtmp用) 背景 作成したアプリケーションのバージョンアップの際には番サーバーにappディレクトリをそっくりコピーするだけで済むのが理想的です。CakePHPのデフォルトではapp/tmpディレクトリの中にログやキャッシュが含まれているので、それらをコピーしないように管理から除外す

  • バリデーションのベストプラクティス - 24時間CakePHP

    イントロダクション CakePHPの使い方は多種多様で、もちろん一つのやり方が正解ということはありません。 しかし、CakePHPはフレームワークであるわけで、想定された使い方以外ではその真価をなかなか発揮できません。 CakePHPにおけるモデルは、ビジネスロジックを置くレイヤとして想定されています。 そして、バリデーションを用いることによって保存のロジックを構築するということも想定されています。 これは、何故Cookbookで紹介されるコードが、ほとんどバリデーションとModel::save()の組み合わせであるかということかの答えにもなっています。 悪い例 あなたはModel::save()の代わりとして、以下のようなadd()メソッドをモデルに定義しているかもしれません: <?php class Post extends AppModel { var $validate = arr

    バリデーションのベストプラクティス - 24時間CakePHP
  • フォーム入力画面と確認画面で共通で使えるXformHelper - cakephperの日記(CakePHP, Laravel, PHP)

    Cakephp1.2.6 追記(2010/12/16): コメントでPHP5.3の動作不具合報告を頂いたので対応しました。報告ありがとうございました。現状、PHP5.2.15, PHP5.3.4で確認し、CakePHPは1.3.6, 1.2.9で確認しました。gitの最新版か、githubにあるダウンロードボタンから0.02というバージョンのコードをダウンロードしてご利用ください。 入力項目が多くなると、確認画面を作るのも時間がかかりますよね、面倒ですし。今までは、確認画面で別途 $form->value使うとか、Postの値をそのまま表示するようにしてたのですが、デザインが入力画面とほぼ同じなのに別に実装するのがなんだかなと思ってました。それに嫌気がさして、フォーム入力画面でも確認画面でも同じメソッドで、フォームタグと値の表示を切り替えるXformHelperを開発しました。 機能は色々

    フォーム入力画面と確認画面で共通で使えるXformHelper - cakephperの日記(CakePHP, Laravel, PHP)
  • CakePHPのビューが表示されるまでの流れ

    CakePHPのビューが表示されるまでの流れ 2009/07/10 in cakePHP | Tags: コントローラ, ビュー, レイアウト, cakePHP, controller, layout, view 仕事で cakePHP をインストールしたレンタルサーバが変なエラーを出して動いてくれないっ!! で、今までよく理解していなかった cake のフローを追っていく羽目に。せっかくなので、書いて残しておきます。(cake1.2.3.8166 を基にしていますが、他もあまり変らないかも) dispatcher.php が基なんですが、その辺はいくつかサイトを見つけたので楽しました。 CakePHPの処理の流れを追ってみよう – d.hetima CakePHPのフローをみる [CakePHP情報] で、libs/controller/controller.php と libs/vi

    CakePHPのビューが表示されるまでの流れ
  • Site Under Maintenance

    We'll be back soon! Our site is currently undergoing maintenance. Please check back later.

    Site Under Maintenance
  • validationのメッセージ出力をDRYにしてみる - Writing Some Code

    1.2系で色々と便利になっているvalidation機能ですが、エラーメッセージ出力については「DRYじゃない」と感じる点があります。 今回はそれを解消することを試みてみました。(バージョンはBeta 1.2.0.6311) 「DRYじゃない」と感じる点 同じruleのメッセージを何度も書かなくてはいけない 例えば、同じruleが複数登場する場合、モデル内の$validate配列が <?php var $validate = array( 'field1' => array( array('rule' => VALID_NOT_EMPTY , 'message' => '必ず入力してください。'), array('rule' => array('minLength', 5), 'message' => '5文字以上で入力してください。' ), array('rule' => array('

    validationのメッセージ出力をDRYにしてみる - Writing Some Code
  • 連載:CakePHPで高速Webアプリ開発|gihyo.jp

    第16回何でもできるようになった1.2のデータバリデーション機能(1/2):基編 秋田真宏 2009-07-17

    連載:CakePHPで高速Webアプリ開発|gihyo.jp
  • Web アプリの MVC 設計まとめ - もやし日記

    MVC 設計について考えていたときに、ちょうどその辺りの話をされている方々が居たので、今の考えをまとめてみました。 目次 前提 肥大化するコントローラを避ける ビジネスロジックをどこに書けば良いのか コントローラとモデルの間にもう一つの層があるとうまくいく? まとめ 前提対象は Web アプリケーションで、画面数(ビューの数)は数個〜100個程度の規模です。WordPressTwitter、37signals のサービスのようなものを作ろうとするとき、どういう MVC 設計をしていくかについて考えます。巨大なシステム、金融系システム、基幹系システムなどを作る場合とは異なる考え方もあると思います(そもそも MVC を使わない、など)。 肥大化するコントローラを避ける例えば、八百屋さんで「60円で仕入れたリンゴ1つを100円で売った」こと(Sales Transaction)を記録する場合を

  • Fahad Heylaal

  • The Cookbook :: 1.2 Collection :: マニュアル

    John David Anderson (docs at cakephp dot org)までEメールを送るか、IRC (#cakephp on freenode as _psychic_)で、参加したい旨を連絡してください。 翻訳者Tips: アクセント文字のためにhtml entitiesを使用しないでください。このbookはUTF-8を使っています。 フレンドリーな文体を使ってください。 タイトルと内容を同時に翻訳してください。 翻訳する言語のページで閲覧・編集してください。そうしないと、英語ページの編集として記録されてしまいます。どの言語の翻訳なのかをレビューアーが知っていることはまれです。 マークアップを大幅に変更したり、新しい内容を追加したりしないでください。オリジナルの内容の情報に不備があるのであれば、英語の情報をまず編集してください。 用語を英語で書く場合には

  • 1