タグ

cakephpに関するhirose504のブックマーク (31)

  • CakePHPアプリケーションの基本的な設計指針 (1) - URL設計 - - 24時間CakePHP

    イントロダクション CakePHPはMVCデザインパターンを採用しており、基的にこれに従った設計が基となります。 しかし、ある程度開発が進んだところで、やっかいな設計の問題にぶち当たることは多いですよね。 そこで、よくある問題を取り上げて、設計の指針としてまとめてみることにします。 注:とても1回で書ききれるとは思えません。連載となる可能性が高いです。 URL設計 CakePHPのURLは、最初は独特に見えたかもしれません。 http://example.com/users/view/1 などよりも、http://example.com/user/hiromi2424 などの見栄えを期待していた方も多いのではないでしょうか。 しかし、だからといって以下のようなアクション、URLの呼び出し方は、後々に響いてきます。 <?php // Route Router::connect( '/us

    CakePHPアプリケーションの基本的な設計指針 (1) - URL設計 - - 24時間CakePHP
  • CakePHP 携帯用ビューを表示する

    サイトにPC用と携帯用がある場合、PC用とは別に携帯用の表示を行う方法です。この方法なら同じコントローラ・アクションで、レイアウトとビューファイルを変更することができます。なお携帯版のURLは[/m/]で始まるようにします。 1.URLルーティングを設定する。 [app/config/routes.php]で[/m/]からURLが始まる場合にwebservicesとして扱うように設定します。 [app/config/routes.php] <?php (snip) $Route->connect('/m/:controller/:action/*', array('webservices' => 'Mobile')); ?> 2.WEBSERVICESを有効にする。 webservicesがフレームワーク内でサポートされるように設定を変更します。 [app/config/core.php:

    hirose504
    hirose504 2011/04/15
    レイアウト・ビューファイルの切り替えはフレームワーク側でやってくれるのでコントローラ側では何も意識する必要が無い
  • CakePHP開発者が知るべき10のこと

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

  • Autotest using Watchr getting notified via Growl | The Bakery, Everything CakePHP

    I was taking a look at ZenTest a while ago, especially the autotest functionality. As stated in the ZenTest site, autotest: Improves feedback by running tests continuously. Continually runs tests based on files you’ve changed. Get feedback as soon as you save. Keeps you in your editor allowing you to get stuff done faster. To add more bang to your buck, you can get continuous notifications from

  • EclipseでCakePHPのMVCを切り替える

    著作 SCRUM BOOT CAMP THE BOOK 著者/訳者:西村直人 永瀬美穂 吉羽龍太郎 出版社:翔泳社( 2013-02-13 ) 定価:¥ 2,520 スクラム初心者に向けて基的な考え方の解説から始まり、プロジェクトでの実際の進め方やよく起こる問題への対応法まで幅広く解説。マンガと文章のセットでスクラムを短期間で理解できます。スクラムの概要を正しく理解したい人、もう一度おさらいしたい人にオススメ。 CakePHPで学ぶ継続的インテグレーション 著者/訳者:渡辺 一宏 吉羽 龍太郎 岸田 健一郎 穴澤 康裕 出版社:インプレス( 2014-09-19 ) 定価:¥ 4,320 Webアプリケーション開発における継続的インテグレーションについて、CakePHPのサンプルをベースにして、その概要から使用ツール解説、導入方法、メンテナンスまでを解説 Chef実践入門 ~コードによる

    EclipseでCakePHPのMVCを切り替える
  • chocoby.jp

    Name chocoby, cho_co, Kenta Okamoto Links Blog (2019-) Blog GitHub (chocoby) Twitter (cho_co) Speaker Deck (chocoby) Mail Development CurryBu Web service to share and explore curry 🍛 jp_prefecture Convert japan prefecture code into prefecture name buranko Tool to parse a git branch name and append commit message Skills Programming - Ruby, Swift, Golang, JavaScript (Flow, TypeScript) Frameworks -

  • 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 の PHP コード実行の脆弱性を使って CakePHP を焦がす - co3k.org

    2010/11/13 に出たらしい http://bakery.cakephp.org/articles/markstory/2010/11/13/cakephp_1_3_6_and_1_2_9_released を読んでびっくりしたんですが、 Twitter を軽く検索した限りだと CakePHP ユーザでない僕が気づいているのに (日の) CakePHP ユーザさんたちがどうも気づいていないっぽいのでわかりやすくまとめてみることにしました! CakePHP には任意の PHP コードが実行できる致命的な脆弱性があります! 影響のあるサイト結構ありそうですが悪用厳禁です! ※通常リリースの告知のなかにこんな致命的な脆弱性に関する情報を思いっきりわかりにくく書いちゃうのはひどいなあと思うので、ユーザの方は CakePHP に文句を言うといいと思います。僕は CakePHP ユーザじゃない

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

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

  • CakePHP 1.3のビューでヘルパーのコードを補完する for Eclipce PDT | php-tips.com

    コントローラとモデル・コンポーネントの呼び出し方法同様に、$this(Viewオブジェクト)の要素としてヘルパーを呼び出すようになります。 なお、以前の呼び出し方法も使えます。 今回はこの新しい書き方をEclipse PDT上で補完する方法を紹介します。 以下のコードを、APP/libs 配下にcode_completion.phpとして配置します。 次に、各Viewファイルの先頭で

    CakePHP 1.3のビューでヘルパーのコードを補完する for Eclipce PDT | php-tips.com
  • 1-byte.jp - CakePHPを使ったテスト駆動開発

    ブログ初ポストはCakePHPを使ったテスト駆動開発です。 CakePHPはユニットテストとしてSimpleTestに対応しています。 SimpleTestをインストールするだけで、モデルやコントローラ、シェル、ルーティングクラスなどのユニットテストが出来るようになります。 今日はこのCakePHPSimpleTestを使ってテスト駆動開発の流れを説明します。 ただ、僕自身テスト駆動開発を学んだのは去年のCake祭りなので、至らない点が多々あります。 もし何かあれば、コメントでご指摘ください。 今更感もありますが、この場を借りてCake祭りでテスト駆動の指導をしてくださった、@sizuhikoさんに感謝します。 開発手順 まずは開発手順を示します。少し細かいですが、テスト駆動では以下のような順で開発していきます。 設計する。 テストケースを書く。 テストケースをデバッグする。 コー

  • 真面目にエロサイトを作ってみた【プログラマ編】 - BLOG|ASTRODEO

    東京都台東区で黙々とウェブでサービスを開発している株式会社アストロデオのホームページです。

  • Zendでも、Symfonyでもなく、CakePHPを選んだ10の理由 - 個人事業主のつぶやき

    C#のコラムをパチってやってみる 理由1 PHP4,5両方対応。 これは、開発者にはありがたい。 個人レベルだと、(お客がすでにサーバを借りていて)バージョンを選びようがない場合がある。 そんなときに、PHP4だったら、ZendもSymfonyも太刀打ちできない。 理由2 PEARに依存してない。 これも、理由1と同じ理由。 どこでも動くという確信を持って作れる。 あと、フレームワーク以外に依存を持つと、 実環境移行時に意外と面倒。 理由3 簡単設定 SymfonyはPEARに依存しまくっているので、 コマンドを叩けば、環境ができてしまうが、 CakePHPは解凍すればOK。この手軽さは譲れない。 Zendはフレームワークというより、ライブラリ群なので、 設定だけでも超大変だ。 理由4 モデルがスマート symfonyはYAMLかかにゃならんし、 Zend_DBは事前設定が面倒だし、SQL

    Zendでも、Symfonyでもなく、CakePHPを選んだ10の理由 - 個人事業主のつぶやき
  • Web アプリの MVC 設計まとめ - もやし日記

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

  • 【戯れ言】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よりは大規模向けです - ぷぎがぽぎ
  • CakePHP版redmine candycaneのソースを公開しました - yandod's blog

    http://thechaw.com/candycane https://www.ohloh.net/p/candycane まだまだきちんと動く状態では無いですが、gitリポジトリを公開に設定しました。 インストーラーや手順が整備されていないのでリリースではなく、開発状況の公開といったところです。 すでに30万行を超えるコードが存在する上に、実装上の思想が十分に統一されていない点があります。 合宿の際にも躓いたのですが特に難儀しているのは下記のようなところです。 リンクの表示の有無を権限によって出しわける部分 behaviorで表現された複雑なリレーション view内で容赦なく呼び出されるモデル yamlで格納されているデータの取扱い コードをシンプルにする為の工夫はまだまだあると感じていますが、まだ基機能であるチケット管理やシステム設定の部分の実装が終わっていません。 その部分にめど

    CakePHP版redmine candycaneのソースを公開しました - yandod's blog
  • CakePHP array-based Active Record

    NYPHPにて行われたCakePHPプレゼンのレビュー記事です。 Last night at the monthly NYPHP meeting, Nate Abele presented an introduction to CakePHP, a web application framework. Chris Shiflett: CakePHP Visits New York (2006-09-28) CakePHPの特徴が簡潔に書かれていて興味深い内容なのですが、以下の一文にピクッときました。 Cake has an array-based Active Record implementation. 私が初めてCakePHPを触った時に感じた印象(違和感)がまさにこれでした。うーん、ぴったりの表現です。 Cakeを初めて触る方はこれを頭にいれておけばすんなり入れるかと思います。 エン

    hirose504
    hirose504 2008/12/15
    Cake has an array-based Active Record implementation.
  • CakePHP1.2 のバリデーション | Sun Limited Mt.

    CakePHP 1.2 を使用してフォームを作成してバリデーションを使用したメモです。 下記サイトを参考にさせていただきました。 cakePHP 1.2のバリデーションを理解する – cakephp – クロアチアで働くプログラマー日記 例としてメールアドレスを2回入力させるフォームを考えて見ます。 バリデーションルールとして 必須項目 メールアドレスとして正しい メールアドレスがユニーク 2回入力したメールアドレスが一致する モデルにバリデーションを定義する var $validate = array( 'email' => array( 'unique' => array( 'rule' => array('checkUnique', 'email'), 'message' => 'メールアドレスは既に登録されています' ), 'rule1' => array( 'rule' => a

  • 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