タグ

cakephpに関するnidieuのブックマーク (39)

  • CakePHP1.2.8228 自分用のbakeテンプレートを作ったよ - 忍び歩く男 - SLYWALKER

    CakeFest Berlin 3日目(カンファレンス1日目)のまとめ - yandodの日記 Baking Master Class: Write programs that write programs (Neil Crookes) bakeのテンプレートを拡張してリッチなbakeをやってみようというセッションです。内容的にはおおむねベーシックな形だったので特に特筆すべきところはありません。 図らずも同じ事を週末にやってました。 bakeのテンプレートの拡張方法は以下の通り。 cake/ venodrs/ css/ js/ shells/ tasks/ ←cake/console/libs/tasks内のファイルをコピー templates/ ←cake/console/libs/templates内のファイルをコピーProjectをbakeするときskelのパスを明示する $ cak

  • CakePHP Behaviorでバリデーション周りの効率化を図る : エクスギア Blog

    CakePHPでバリデーションを使う際、標準(CakePHP1.2)のままでも十分開発はできますが、大きめのプロジェクトや複数のプロジェクトでも汎用的かつ効率的に使えるようにできないかと検討しました。 バリデーション改善の目的 エラーメッセージを日語化し共通化・デフォルト化したい 独自バリデーションメソッドを共通化したい ルール配列を簡単に記述したい(項目が多いとソースが長くなり過ぎて見通しがよくない) バリデーションの前に自動で整形処理をしたい(半角英数変換やカタカナ変換など) 実装にあたって バリデーションメソッドの共通化については、 cakephperさんの日記:よく使う独自バリデーションルールをプラグインのbehaviorにまとめる に記載してありますように、プラグインのbehaviorで管理するほうが良いと思いますが、今回は弊社で過去に実装した通常のbehavior(Bas

  • CakePHP私見チュートリアル - 動作の仕組みの概要

    前回、cakePHPのファイル構成について簡単に説明しました。 今回はそれに基づいて、それらがどのように動くかをまとめてみます。 まとめたものが下の図です。 点線の左側がcakePHPで構築されるシステムになります。 まず、前回のファイル構成の説明でも触れたように、全てのリクエストは、.htaccessの制御によって、app/webroot/index.phpへ転送されます。 そして、このindex.phpはDispatcher(cake/dispatcher.php)を呼び出します。 このDispatcherはリクエストURLを元に、config/route.phpの内容を考慮し、呼び出すコントローラを決定します。そして、決定したコントローラを呼び出します。 コントローラでは、アクセスに基づいた処理を行います。 処理の際に永続データ(データベース中のデータ)については、モデルを利用してデ

  • セッションの有効期限を長めに持つ時の注意 - cake bake diary

    coreのSession.timeoutを長めに設定していても、php.iniの設定によってはそれより早くセッションが切れてしまう。 これはphpのガベージコレクション*1が働いているのが原因。 解決するにはcore.phpに以下のように書く。 <?php Configure::write("Session.save", "cake"); Configure::write("Security.level", "medium"); // セッションは24時間でタイムアウトし、 Configure::write("Session.timeout", 24 * 60 * 60 /100); // それ以降にリクエストがある度、 ini_set("session.gc_maxlifetime", 24 * 60 * 60); // 1/100の確立でガベージコレクションを行う。 ini_set("

  • 第4回CakePHP勉強会@Tokyo無事終了 - yandod's blog

    第4回CakePHP勉強会@Tokyo - events.php.gr.jp 東京でのセミナースタイルの勉強会としては昨年のCakePHPカンファレンス以来という事で久し振りの開催になりました。 前回、あれだけの規模でGarrettまで来てくれたのでそれをどう超えるのかが悩みだったのですが結果はとてもエキサイティングで新鮮なものになりました! 発表も全部で10と詰め詰めな感じで参加者の皆さんの脳を酷使しましたが、その甲斐あってか刺激が多い時間になったのではと思います。 参加して頂いたみなさんと楽しい時間を過ごす事が出来て良かったです。 僕の発表資料は下記に。 20090522 CandycaneView more Microsoft Word documents from yandod. 下記は全体を思い返してのメモ。 candycane 僕の発表です コードの中身の発表などもしたいです

    第4回CakePHP勉強会@Tokyo無事終了 - yandod's blog
  • 極める routes.php (CakePHP 1.2) : akiyan.com

    極める routes.php (CakePHP 1.2) 2009-05-24 5/22に開催された第4回CakePHP勉強会@Tokyoにて、routes.phpの書き方と逆ルーティングについて発表させて頂きました。勉強会での発表は2回目です。 以下発表資料です。 極める routes.php View more Microsoft Word documents from akiyan. 「CakePHPでmod_rewriteを使わずに大抵のURLを作れる自信がある人ー?」 という質問でほとんど挙手が無かったので、テンション高めで発表できました。あと、1回目の発表では緊張しすぎて声が出なかったので、今回ははっきり喋るように心がけてみました。(それでも焦った箇所では声が小さくなっていたかも...)お聞きくださった皆様、どうもありがとうございました! ちなみに極めるといいつつも、named

  • 【戯れ言】PHPフレームワーク選択のベストプラクティス - yandod's blog

    【戯れ言】symfonyはCakePHPよりは大規模向けです - ぷぎがぽぎ すでに過去の資料に言及されていますが、敢えて釣られてみます。 自分の基的なスタンスとしては大規模であろうと小規模であろうと好きなフレームワークを使って開発するのが良いと思います。 結局のところ同じ程度に成熟していればどのフレームワークを使っても、レアなケースを除いて望んだアウトプットが得られると思います。 ただそれぞれのフレームワークにベストプラクティスというか勝ちパターンのようなものはあると思います。 業務での利用について自分なりに知っていると思えるCakePHPとsymfonyについて勝ちパターンを考えてみました。 CakePHPのベストプラクティス PHPのコーディングかRailsの経験者がチームに居る 連想配列が中心となるデータモデルに慣れる 各種日語書籍で全体感をつかんでおく 開発のイメージにフレー

    【戯れ言】PHPフレームワーク選択のベストプラクティス - yandod's blog
  • 【戯れ言】symfonyはCakePHPよりは大規模向けです - ぷぎがぽぎ

    例えば、フレームワーク比較で良く目にする違いとして「Symfonyは大規模向け、CakePHPは中小規模向け」というのがある。これはいったい何なのだろう? よく読むと、大抵は「Symfonyはプラグイン機能があるため、大規模向け」という書き方がされている。これは当にそうなのだろうか? まず簡単なツッコミをさせていただくと、CakePHPは、既にプラグイン機能を装備している。Symfonyとほぼ同じように、一連機能を持った仕組みを簡単に入れたり抜いたり出来る。つまり、この定義でいけば、CakePHPは十分に大規模向けだ。 .. (略) .. そしてプラグインは、私はむしろ逆の、中小規模向けのものと考える。何故なら、第三者の制作したものを、手っ取り早く自分のものに出来るというのが実質的なところであり、そういった用途のものは中小規模向けに書かれているものが多いからだ。 まず前提として、プラグイ

    【戯れ言】symfonyはCakePHPよりは大規模向けです - ぷぎがぽぎ
  • 第14回 CakePHP 1.2を使いたくなる5つの新機能 | gihyo.jp

    約1年ぶりとなった連載。これから数回にわたり、最新バージョン1.2にフォーカスして、技術動向をお届けします。 2009年1月、Cake PHP 1.2登場 前回の連載記事から約1年ぶりとなりました。この間、150人規模のCakePHPのイベントが開かれたり、多数のCakePHPの書籍が発売されたり、公式サイトのトップページが日語化されたりと日におけるCakePHPの「普及期」であったと言えるでしょう。 そして2009年の1月にはCakePHP 1.2のバージョン表記に待望の「Stable」表記が付けられました。Stableとは直訳で「安定した」という意味で、同一のバージョン系列上では互換性を大きく損なうような仕様変更は行われず、バグが無い状態を保っていることを(少なくともCakePHPでは)示します。なので、alphaやbetaとは安心感が格段に違います。今までに1.1を使ったことが

    第14回 CakePHP 1.2を使いたくなる5つの新機能 | gihyo.jp
  • CakePHP 1.2 の Basic 認証設定があまりにも簡単すぎる(ラボブログ)

    スパイスラボ神部です。 ちょっと前から悩んでいたのですが、CakePHP でサイト開発をするとき、Basic 認証はどうすればいいのか…という問題があります。CakePHP の Routing と、Apache のディレクトリ構造とは一対一対応ではないため、たとえば特定のコントローラ以下にのみ認証をかけたい場合などは、どこにどうやって .htaceess を置けばいいのか、と言うことに悩んでしまいます。 そこで CakePHP のフォーラムに相談してみたところ、解決方法があまりにも簡単でスマートなことに驚いてしまいました。 -Apacheが好きだ! - Favorites! Security コンポーネントと beforFilter の活用 解決方法で提示されていたのが、こちらのブログエントリ。 -CakePHPでBasic認証対応ページを作る - blog.katsuma.tv こちら

  • CakePHP公式マニュアル翻訳システムのソースコードもzipでくれ - yandod's blog

    http://thechaw.com/ CakePHPで作成されたチケット管理システムであるChawが公開されています。 先日のカンファレンスの際に来日したgarrettからもこういったものを作っているという話は聞いていたのでついに出たなーという感じです。*1 またそれに伴って日人の翻訳が爆走している公式マニュアルの翻訳システムであるcakebookのソースが公開されています。おそらくCakePHPを使っている世界中のユーザーが日夜触れているアプリケーションという事で信頼性は十分なのではないでしょうか。コードを取得するにはgitをセットアップし、Chawにアカウントを作るという事で少し敷居が高いですね。 というわけでチェックアウトしたコードをzipで圧縮してみました。 コードをつつきまわすなり*2、ローカルで動かしてみるなりご自由にご活用ください。 自分でも週末に動作環境を作ってみる予定

    CakePHP公式マニュアル翻訳システムのソースコードもzipでくれ - yandod's blog
  • Welcome - 5.x

    Welcome¶ CakePHP 5 is a web development framework running on PHP 8.2 (min. PHP 8.1). Read CakePHP at a Glance to get an introduction to the fundamentals of CakePHP. The CakePHP cookbook is an openly developed and community editable documentation project. Notice the pencil icon button fixated against the right wall; it will direct you to the GitHub online editor of the active page, allowing you to

  • PHP関西勉強会で発表してきました&発表資料

    東京なら勉強会も多いのでこんなのもアリでしょうけど、関西のPHP系勉強会は最近あまり開催されなかったので、そもそも人が来るのかなあと思ってました。 良い方に予想外でした。やはり関西のPHPerはイベントに行きたくてウズウズしてたんですね:-D 今回は発表もあったので簡単にメモを。 PHPUnit + SeleniumRCなお話 開催にご尽力頂いたkunitさん PHPUnit + Testing_Selenium + Selenium RC 資料ナシのプレゼン!(これは真似できません。。。) Selenium IDEで作ったテストケースを、PHPUnitのテストケースに変換するツール => を、デモする予定だったけど間に合わず。。。 考えたら今週kunitさんイベント出まくりで、そのどれもで発表してる! 今後公開されるとの事なので期待! Seleniumのテストは個人の環境でちょろっとやっ

  • ECWorks Blog(仮)

  • 8/23 CakePHPハンズオン@Tokyo無事終了 - yandod's blog

    CakePHPハンズオン@Tokyo - events.php.gr.jp エントリが遅くなりましたが、無事終了しました。 今回はハンズオンという事でかなりチャレンジングであり、準備不足な点も若干あったので大変でした。 とはいえお兄さん達(suzuki,iogi,cocoitiban)のおかげで形になったのではと思います。 発表資料もあげておきましたので、今後の入門者の参考になればと思います。 発表資料ダウンロード また動画の方もご協力のおかげで残っていますので合わせて紹介しておきます。 全景 http://www.ustream.tv/recorded/656434 http://www.ustream.tv/recorded/656521 http://www.ustream.tv/recorded/656682 モニタ http://www.ustream.tv/recorded/6

    8/23 CakePHPハンズオン@Tokyo無事終了 - yandod's blog
  • CakePHPカンファレンス東京はUstreamでライブ放送も行います! : akiyan.com

    CakePHPカンファレンス東京はUstreamでライブ放送も行います! 2008-10-21 お知らせです。今週末(10月25日)開催のCakePHPカンファレンス東京ではUstream上でのライブ放送を行います。参加できなかった方はぜひご覧ください!(公式サイトにもプレイヤーとリンクがあります) Free TV : Ustream Ustreamサイト上で観ればチャットもできますよー。 ライブ担当は運営委員会メンバーの荻原一平(id:i_ogi)さんです。どうぞよろしくお願いします! コメント / トラックバック コメントは受け付けていません。

    nidieu
    nidieu 2008/10/21
    カンファレンスは2008.10.25(sat) 10:30-15:30
  • 携帯サイトの404ページの作成方法

    CakePHP1.2 RC2 PC と携帯が共存しているサイトで、404 エラーが発生すると通常は PC 用の 404 エラーページが表示されます。 そこで、携帯用の 404 エラーページを表示するために、app_controller.php に下記内容を書きます。 function beforeRender() { if (isset($this->params['prefix'])) { if (isset($this->viewVars['code']) && $this->viewVars['code'] == '404') { $this->viewPath = $this->params['prefix'] . '_' . $this->viewPath; } } } これで、携帯サイトにて 404 が発生した場合は、"prefix" の設定が "mobile" なら、"mob

  • CakePHPカンファレンスが10/25(土)に開催されます! : akiyan.com

    CakePHPカンファレンスが10/25(土)に開催されます! 2008-09-18 CakePHPカンファレンスが10/25(土)に開催されることが決まりました! 今のところお伝えできる概要は、以下の通り。(アップデートがあり次第、続報をお伝えします) 日程 10/25日(土) お昼前から開始、日が沈む前には終了 場所 東京都 JR御茶ノ水駅から徒歩1分 目玉 CakePHP開発者のGarrett J Woodworth氏が来日! (通訳つきで講演できる予定です) 収容人数 100人以上 懇親会 もちろんあります :) 運営 CakePHPカンファレンス運営委員会 その他 LT枠もあるのでこの機会にぜひネタを披露してみませんか? アメリカからCakePHP開発者のGarret J Woodworth氏が来日することもあって、参加者100人以上という大きなイベントになります。10/25日(

  • cakephp-study

    USTREAM cakephp-study : .

    nidieu
    nidieu 2008/06/27
    勉強会は19:30-21:30
  • CakePHP HABTMをもっと強力にする with Model | エクサイト

    HABTM(はびたむと一部では発音するらしい)とは、ModelのHasAndBelongsToManyの略で、いわゆる多対多の関係性をきれいに表すのに便利です。 よくある例でいうと、ブログ記事が複数あり、記事に関連するタグも複数あるとします。 ブログ記事は、複数の関連するタグを持っていて、タグも複数のブログで使われているので、持っていると定義できるわけです。 CakePHPではHABTMにwithという設定を追加すると、少し面倒なロジックを一発で行えるのでメモしておきます。 今回は、イベント出席管理ツールみたいなものを想定してデモします。