タグ

cakephpに関するHolyGrailのブックマーク (59)

  • CakePHP 2.0 のリリース(訳) - 24時間CakePHP

    訳 CakePHPコアチームはメジャーなバージョン番号のジャンプをアナウンスすることに興奮を覚えています。 CakePHP 2.0 安定版が出ました! 私たちはこのリリースに永久の時を注ぎ込み、このバージョンのフレームワークに素晴らしいアイデアの数々を成すことができました。 これは2.0が意味するものの応急な概要です: PHP4のサポートを打ち切り、全てのコードをPHP5.2以上に厳密に尊守するように書き直しました。 例外、PDO、SPL、json_encodeなどなどのネイティブな機能の使用。 ファイル命名へPSR-0を取り入れました。あらゆるクラスは同じ名前を用いてファイルにマッピングされます。覚えることが少なくなりました! 新しいエラーと例外のハンドラーは簡易な設定や、ページが見つからないエラー、承認エラーなどのエラーとの楽な協調、など数多くのものを提供します。 マルチリンガルな開発

    CakePHP 2.0 のリリース(訳) - 24時間CakePHP
    HolyGrail
    HolyGrail 2011/10/18
    和訳おつかれさまです
  • CakePHPのControllerがディレクトリの階層に対応していた件 - Lism.in * blog - nekoya (id:studio-m)

    (追記)記事の内容はCakePHP1.3.6ならびに2011/04/28時点でのgituhbの1.2, 1.3ブランチで検証しました。 (2011/05/05追記)コメントで現時点のCake2.0では再帰的な探索を行わないとのご指摘を頂きました。ちゃんと追えてないけど、import周りの処理は大幅に変更されるようです。 「CakePHPではControllerは1つのディレクトリに全部入れるのがふつう」という話を聞いて、さすがにそれはないだろうと思って調べたらapp/config/bootstrap.phpに$controllerPathsを書けば探索パスを追加できるという情報を得た。 CakePHPでコントローラーを複数のディレクトリに整理する方法 - yandodの日記 コントローラの中身をフォルダ分けする|ASTRODEO のだけど、どうにもうまく動かなくてあちこちいじくり回してた

    CakePHPのControllerがディレクトリの階層に対応していた件 - Lism.in * blog - nekoya (id:studio-m)
  • バリデーションのベストプラクティス - 24時間CakePHP

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

    バリデーションのベストプラクティス - 24時間CakePHP
  • CakePHP開発者が知るべき10のこと

    先日、こんな記事が上がっていました。 Android開発者が知るべき10のこと この記事でまとまっているのは、Android開発において必要な10の項目です。 インターフェースの設計から、データの取り扱いまで。 AndroidはモバイルデバイスのOSで、CakePHPは単なるWebフレームワーク。 しかし、予め用意されたルールやAPIを活用する点は同じです。 つまり、フレームワーク全般において、開発者が知るべきことをまとめることが出来るはずです。 ここでは、私が良く利用するCakePHPフレームワークについて、開発者が知るべき10のことをまとめます。 1. CakePHPで良いのか CakePHPを使う際に、知るべきことその1。 それは、あなたは当にCakePHPを使うべきなのかということです。 現在、あらゆるフレームワークが溢れ返っています。 Ruby Ruby On Rail

  • CkaePHPプラグインのまとめ – 総括編

    CakePHPはやはり便利ですね。 記事を翻訳したことで、まだまだ知らない世界があったことを知りました。 そしてまた新しい知識欲が湧いてきました。 皆さんはどうですか? 何か使ってみたいプラグインはあったでしょうか。 これまで載せたCakePHPプラグインの記事を一覧にしておきます。 認証編 AuthComponentの代替えになるプラグインやfacebookと連携するプラグインが紹介されています。それに加え、使いにくいACLを使いやすくするツールも。個人的には一番、興味のある記事でした。 検索とページネーション/ファイルアップロード編 CakePHPの使いにくいページネーションを使いやすくするプラグイン、Yahoo! BOSSのプラグインが紹介されています。ファイルアップロードはTransloaditというサービスに対応させるプラグインから、メジャーなメディアプラグインまで。 最適

  • Sales Inquiry spark-lab.com | Uniregistry

    Inquire now and spark-lab.com can be yours today. This domain is listed for sale in the Uniregistry Market, a premier domain name marketplace. Buy with confidence We’ve helped thousands of buyers securely purchase domain names for over a decade, and we’re confident that we can do the same for you.

  • Posts | Mark Story

    Websites need maintenance, and sometimes that maintenance requires the site to go down for a little bit as you tweak the database, add additional capacity or make large changes to the application code. In these circumstances you cannot afford to have users mucking about on your application. However, you might need access to ensure all your amazing upgrades go smoothly or perhaps do the upgrading i

    Posts | Mark Story
  • http://atnd.org/events/11810

    http://atnd.org/events/11810
    HolyGrail
    HolyGrail 2011/01/13
    埋まるの早過ぎるのでLT枠で無理やりねじ込もう
  • Ktai Library for CakePHP | ECWorks Blog

    携帯サイトを構築する場合の、各キャリア対応をサポートするライブラリと、それをCakePHPで利用するためのヘルパー・コンポーネントを公開いたします。ライブラリ体はCakePHPだけでなく他の環境でも使用することが出来ます。 【お知らせ】 ktailibrary.orgは諸事情ありまして閉鎖しました。 はじめに 携帯サイトを作成する場合、一般的には各キャリア向けにHTMLを作成し、それを振り分けして表示する仕組みを採用していたと思いますが、最近の携帯では、いくつかの仕様を除いてほぼ同じHTMLを閲覧することが可能になってきています。そこで、その「いくつかの仕様」についてを解決できるような仕組みができないものか…という経緯から、ライブラリが生まれました。 また、ライブラリは個人的に作成していたPHPライブラリがベースになっているのですが、CakePHPで使えるようにすることで「携帯サイト

  • ktailibrary.org

    RedmineKtai Libraryのバグトラッキングサイトです。 携帯サイトを作成する場合、一般的には各キャリア向けにHTMLを作成し、それを振り分けして表示する仕組みを採用していたと思いますが、最近の携帯では、いくつかの仕様を除いてほぼ同じHTMLを閲覧することが可能になってきています。そこで、その「いくつかの仕様」についてを解決できるような仕組みができないものか…という経緯から、ライブラリが生まれました。CakePHPにて利用されることを想定していますが、ライブラリ単体は他のPHP環境で利用することが出来ます。 詳しい情報はおよびダウンロード方法はこちらにて公開しています。 ▼Ktai Library for CakePHP1.2 http://blog.ecworks.jp/ktai 最新ニュース Ktai Library 0.x: バージョン0.2.3公開(2009/03/2

  • CakePHPで普段使っているpluginをまとめてみた | Web活メモ帳

    2010年を振り返る意味で、自分がCakePHPで開発する際に良く使うプラグインをまとめてみました。 誰かのお役に立てれば幸いです。 1.cakeplus ■ よく使うバリデーションをまとめたBehaviorであるadd_validation_rule モデルでバリデーションする際に当に使います。 var $validate = array( 'hoge' => array( "rule1" => array('rule' => array('katakana_only'), 'message' => 'hogeにカタカナ以外が含まれています' ), ), ); ■ 自動でhiddenタグを生成するヘルパーformhidden 確認画面を挟む際にhiddenに入力情報をまとめて出力してくれます。 echo $formhidden->hiddenVars(); このプラグインを知ってから、

    CakePHPで普段使っているpluginをまとめてみた | Web活メモ帳
  • CakePHPからJSONをつかうモデルをつくった - UNIX的なアレ

    JSONでシリアライズされているAPIをたたくようなモデルを作ってみました。ローカルに配置しているJSONのファイルにも対応しています。 キャッシュをさせるような仕組みになっているので、多数叩くような場合にも効果的です。 modelの下に、json.phpというファイル名で保存してください。 app/models/json.php <?php class Json extends AppModel { var $name = 'Json'; var $useTable = false ; /* * jsonデータの取得 * @param string JSONファイルへのパス * @param boolean キャシュさせるか * @return mixed */ function find( $path , $cache = false ){ if ( !substr_count( $p

    CakePHPからJSONをつかうモデルをつくった - UNIX的なアレ
  • CakePHPからGoogle Analytics APIを使う方法 - UNIX的なアレ

    nanapiのシステムで一部使う必要があったので、ちょっとチャレンジしてみました。 Google Analytics APIってちょっと面倒そうなイメージがあったので今まで敬遠していたのですが、まぁそうも言っていられなかったわけです。日語ドキュメントがあると嬉しかったのですが、あんまり良質なのがないので家を頑張って読み解きました。 ライブラリを利用する まぁいくつかライブラリはあるわけですが、PHPは公式のライブラリが用意されていません。 ただ、公式のヘルプに紹介してあるものがあったのでこちらを利用しました。画面下部にある、PHP5 OOP Interfaceというやつです。 http://code.google.com/intl/ja/apis/analytics/docs/gdata/gdataLibraries.html 使う前に取得しておくべきもの Google Analyti

    CakePHPからGoogle Analytics APIを使う方法 - UNIX的なアレ
  • CakePHP アプリケーションの流れを追う

    Please select the category that most closely reflects your concern about the presentation, so that we can review it and determine whether it violates our Terms of Use or isn't appropriate for all viewers.

    HolyGrail
    HolyGrail 2010/12/17
    今さらだけどちゃんと基本押さえておこう
  • Gitと一緒にCakePHPを楽しむ – CakePHP Advent Calendar 2010 6日目

    これはCakePHP Advent Calendar 2010の6日目の記事です。 CakePHP Advent Calendarって何?という方はこちらへ。 CakePHP Advent Calendar 2010を開催! CakePHPに関するtipsを1日1つ、順番に紹介するということなので、私はGitとCakePHPの活用について書きます。 恐らく、これはCakePHPに限らずあらゆるフレームワークで有効なtipsです。 CakePHPを初めとするフレームワークを長く使っていると、色々と面倒なことが起きてきます。 フレームワークのバージョンアップ 外部ライブラリのバージョンアップ 複数プロジェクトにおけるコードの共通化 “フレームワークのバージョンアップ“は重要です。 先日、こんなバグも発見されましたしね。 CakePHPPHPコード実行の脆弱性を使ってCakePHPを焦が

  • CakePHP - Build fast, grow solid | PHPフレームワーク

    New CakePHP 5.1 Chiffon. Faster. Simple. Delicious. What's new in 5.1 The migration guide has a complete list of /what's new in 5.1. We recommend you give that page a read when upgrading. A few highlights from 5.1 are: new plugin commands Components can now have dependencies injected by the container Upgraded to support PHPUnit 11.1+ Improved enum validation More events, so you can observe your ap

    CakePHP - Build fast, grow solid | PHPフレームワーク
  • CakePHP で Amazon 的な SEO 対策を行う – 1/4dot Blog

    どの様にして、CakePHPAmazon の様に URL のディレクトリ先頭部に SEO 的なワードを入れられるかを考えてみた。 CakePHP で利用するコントローラーは、アクセスされた URL を元に /cake/cake/dispatcher.php が解析しコントローラーを決めている。しかし、/cake/cake/dispatcher.php は CORE から読み込まれるため APP だけで完結することができない。 /cake/app/config/routers.php で制御しようかとも考えたが、その都度設定するのも手間が掛かるし手を入れるのは運用上よくないことだと思う。 そこで思い付いたのは、/cake/app/webroot/index.php で呼び出されている Dispatcher に URL を渡してやることだ。 $Dispatcher = new Dispa

  • CakePHP group byとinner joinでhasManyデータの件数を検索する – MT Systems

    例えばusersテーブルとpostsテーブルがあり、「users hasMany posts」としたとき、ユーザの投稿したメッセージ件数の一覧表など作りたいことなど、普通にあると思う。そんなとき、usersテーブルとposts テーブルをJOINして、同じuser_idを持つpostsデータをGROUP BYでまとめて、count()で件数を引っ張り出す。SQLで書くと以下のような感じ。 SELECT User.id,User.name,count(Post.user_id) AS num FROM users AS User LEFT JOIN posts AS Post ON User.id=Post.user_id GROUP BY User.id; ここで、投稿を1度もしていないユーザを省略したい場合は、「LEFT JOIN」を「INNER JOIN」に変更すればよい。 さて、この

  • Transitionコンポーネント1.0をリリースします。 - 24時間CakePHP

    6/19追記:@k1LoWさんが紹介記事を書いてくれました。ありがとうございます! 概要 @k1LoWさんの多大な助力もあり、多くのバグフィックスと新機能の追加がありました。 トータルで89のテストケースがパスし、実践投入が現実的になりましたので、ここに1.0をリリースすることをお知らせします。 ダウンロード http://github.com/hiromi2424/TransitionComponent/downloads 「1.0」をダウンロードしてください。 主な新機能 Session->setFlash()のパラメータが全て指定できるように、$flashParamsプロパティが導入されました。(k1LoWさんの提案) mergedData()の引数に$callbackがつきました。これによりマージの仕方を好みに変更できます。デフォルトがSet::merge()になりました。(以前は

    Transitionコンポーネント1.0をリリースします。 - 24時間CakePHP
  • joinsオプションを生成するMatchableビヘイビア - 24時間CakePHP

    仕様変更しました。2010/6/06 13:00 find('matches')といった書式は破棄されました。'jointo'パラメータの指定のみで動作するようになりました。 この変更によりpaginateCountが適切に動作するようになりました ソースコード http://github.com/hiromi2424/MatchableBehavior/ イントロダクション ページネートする際、joinsオプションが肥大化することはよくあることですよね。 habtmとかを絡めると5つ以上のjoinsオプションを長々と書かなくてはならず、いっそquery()でSQLを直接発行したほうが早いよぷんすか! といった経験はありませんか? それを解決するのがMatchableビヘイビアです。 このビヘイビアで何ができるの? 簡単な指定で、モデルのアソシエーションからjoinsオプションを自動生成で

    joinsオプションを生成するMatchableビヘイビア - 24時間CakePHP