タグ

CakePHPに関するchiku-sanのブックマーク (67)

  • VagrantでPHP 5.5 & CakePHP 2.4.5開発環境を10分で整備

    MacにCakePHPMySQLなどが入ったVagrantのboxをインストールする手順を整理しました。ApacheやMySQLをほとんど設定せずに、開発を開始できます。PHPの開発を始めてみたい人にお勧めです。 🚕 Vagrantの基的な構成apache2 php5 (5.5) php5-cli php5-mysql php5-dev php-pear PHPUnit PHP_CodeSniffer CakePHP_CodeSniffer mysql-server phpMyAdmin git-core vim curl composer

    VagrantでPHP 5.5 & CakePHP 2.4.5開発環境を10分で整備
  • ScaleOut | Supership

    2024年4月1日より、Supership株式会社は親会社であるSupershipホールディングス株式会社に吸収合併されました。 合併に伴い、存続会社であるSupershipホールディングスは社名をSupershipに変更し、新たな経営体制を発足しました。件に関する詳細は、プレスリリースをご確認ください。 2024年4月1日より、Supership株式会社は親会社であるSupershipホールディングス株式会社に吸収合併されました。 合併に伴い、存続会社であるSupershipホールディングスは社名をSupershipに変更し、新たな経営体制を発足しました。 件に関する詳細は、プレスリリースをご確認ください。

    ScaleOut | Supership
  • CakePHPのシェル機能で各種コントローラーやコンポーネントを読み込む - うたちゃく!開発ブログ(febのプログラミング備忘録)

    CakePHPのシェル機能の使い方って情報が少ない気がする。 ということでちょっとしたまとめ。 <?php App::import('Core', 'Controller'); // コントローラーのベースクラス App::import('Controller', 'App'); // AppController App::import('Controller', 'UsersController'); // UsersController App::import('Component', 'TestComp'); // コンポーネント App::import('Component', 'MyPlugin.PluginComp'); // プラグインのコンポーネント class SampleShell extends Shell { var $uses = array('User'); /

    CakePHPのシェル機能で各種コントローラーやコンポーネントを読み込む - うたちゃく!開発ブログ(febのプログラミング備忘録)
  • Smartyテンプレート内でrequestActionを使う方法

    CakePHPのマニュアルに載っているrequestAcrtionをViewテンプレート内で使う方法ですが、SmartyViewを使うとそっくり同じにはできません。ちょっと試して代替方法で出来たのでメモ。 CakePHP 1.2.3.8166 + SmartyView 1.2.1で確認。 CakePHPマニュアルの例を取ってみます。 requestAction :: その他の便利なメソッド :: コントローラのメソッド :: コントローラ :: CakePHPによる開発 :: マニュアル :: 1.2 Collection :: The Cookbook まずはエレメントのテンプレートファイル。 views/elements/latest_comments.ctp $comments = $this->requestAction('/comments/latest'); foreach($

    Smartyテンプレート内でrequestActionを使う方法
  • cakephpでブックマークアプリを作る 最終回!

    目次:CakePHP入門 Cakephpとは人気のフレームワークの一つです。 SQLを書かなくても、何と10分足らずでプログラムが作れちゃいます! そんな大人気のCakephpの入門をまとめました。 この記事の通りに進めていくと、オリジナルのデザインリンク集を作ることが可能です。 ぜひこの記事を通してCakephpの魅力を存分に知ってくださいね! cakephpでブックマークアプリを作る 最終回! cakephpでブックマークアプリを作る (8)-2 cakephpでブックマークアプリを作る (8)-1 cakephpでブックマークアプリを作る(7) cakephpでブックマークアプリを作る(6) cakephpでブックマークアプリを作る(5)-2 cakephpでブックマークアプリを作る(5)-1 cakephpでブックマークアプリを作る(4)-2 cakephpでブックマークアプリを作

  • 個人的によく使いまわすAppModelにおける5つのメソッド

    俺がCakePHPの開発では最近は必ずというほど実装しているAppModelの機能をなんとなく紹介してみる。 だいたいはどこかのサイトに載っていたものを使っていますが、出所は覚えてなかったり。。。 CakePHP 1.2.7対応(おそらく1.2共通) 開発環境と番環境でDB切り替え 開発環境では開発用のDB番では番用DBを自動で切り替える機能。 これやっとけば設定の書き換えなしで、番アップ可能。 // app_model.php function __construct($id = false, $table = null, $ds = null) { $this->useDbConfig = !IS_DEVELOP ? 'default' : $_SERVER['CAKE_DB_CONFIG']; parent::__construct($id, $table, $ds); }

    個人的によく使いまわすAppModelにおける5つのメソッド
    chiku-san
    chiku-san 2013/08/07
    開発と本番切り替え
  • How to create an XML-RPC server with CakePHP | The Bakery, Everything CakePHP

    This tutorial describes a method to create an XML-RPC server that goes a bit against Cake’s logic and conventions. I like the way the framework “distributes” the logic of the web application between different controllers (i.e. Posts, Comments, and so on). But when I want to develop an XML-RPC server, I prefer to place all the code into a single controller so I can maintain consistency and ha

  • CakePHPアプリケーションの基本的な設計指針 (3) - カスタムfindタイプ - - 24時間CakePHP

    イントロダクション 標準のfindの種類(first, all, count, threaded, neighbor, list)だけでは、ビジネスロジックに対応できないことがあります。 これに対するひとつのプラクティスとしては、カスタムfindタイプを定義することです。 この記事では、実際の開発を想定したリファクタリングの過程を通してカスタムfindタイプの定義の仕方と活用方法、その意義をご紹介します。 「次」の記事 例えば、カレントのレコードの「次*1」のレコードを取得したい場合、それに纏わる複雑な処理は、単純なqueryの発行だけでは済まないことがあります。 この「次」のレコードを探索するロジックを例に、ボブ*2がこれを実装していくお話をしましょう。 要件の定義 ボブの上司のサム*3は、クライアントの会社のサイトにブログモジュールを追加するプロジェクトの打ち合わせで、次の要件を定義し

    CakePHPアプリケーションの基本的な設計指針 (3) - カスタムfindタイプ - - 24時間CakePHP
  • [cakePHP]findの戻り値からモデル名を除去する – もぎゃんらんど

    cakephpでModel->find(‘all’); をつかうと、検索結果を取得することができる。 この結果を $this->set('results',$this->Model->find('all')); $this->set('status','ok'); という具合にパラメタにセットして、 protected function return_as_json(){ $this->header('Content-Type: text/html'); echo $this->indent( json_encode($this->viewVars) ); exit(); } というような関数を呼び出してあげれば、検索結果をJSONで返すWebAPI的なものを作ることができる。 ところがこれがちょっと変で。JavaScriptからみた戻り値はこんなふうに見える。 { "results":

  • CakePHP 2.x で Cron を使う | X->A->O

    目次 はじめに ポイント 例 自作のShellクラス シェルスクリプト ジョブコマンド おまけ コマンドから柔軟に引数を渡す 呼び出しがShellであるかの是非を知る メソッド実行後のコールバックメソッドは・・・「無い」 なんとなくコンソール系が苦手な人 そのほかありがちなトラブル はじめに 以前、CakePHP1.3(ひょっとしたら1.2?)のときにもCronの使い方をメモしたのですが、あちらは通常の、ブラウザから渡されたURLに基づくアクションを疑似的に実行するという、どちらかというと裏技的なやり方であり、CakePHP来のShellの使い方ではなかったようです。(なお、基的なシェルアプリの作り方も書きましたので興味のある方はご覧ください。) 今回2.xを使い始めたこともあり、改めてCronの使い方について学習したのでメモします。1.3とは結構変更があったようで、Consoleと

  • SQLから考えるModel::findの使い方 | CakePHP私見チュートリアル

    CakePHP Advent Calendar 2011の23日目の担当です。 @MiuraKatsuさんに続いて記事を書かせて頂きます。 CakePHPを使い始めた当初、一番、楽だなぁと思ったことの一つが、Model::findで簡単にDBからデータを抽出できることでした。ただ、複雑なクエリになってくると、戸惑ったのも事実でした。 基的なModel::findについては理解しているとして、Model::findでどんなSQLが実際に実行されるかということを考えながら、複雑なクエリを構築する際のTipsをまとめてみたいと思います。Cookbookなどにも同様の内容はありますが、まとまった形で残すことで、どなたかのお役に立てばと思っています。 この記事を通して次のような関連があるDBを考えてみます。 User hasOne Profile User hasAndBelongsToMany

  • CakePHP routes.phpの確認はユニットテストで

    routes.phpを仕様に合わせて設定しておきます。 <?php // Router::connect('/:user_id/edit', array('controller' => 'user', 'action' => 'edit')); Router::connect('/', array('controller' => 'top', 'action' => 'index')); Router::connect('/:user_id/*', array('controller' => 'user', 'action' => 'index')); // Nothing Router::connect('*', array('controller' => 'nothing')); ?> 最後はシステムが取るべきURL以外ならNot Foundを出すように設定しています。これにより想定外

  • 自分の中でブレイクしている、vagrant + chef + gitで開発環境を構築する - ロックとチュウーハイとこりんがるな日々

    プログラマーとして仕事をするようになって常々感じていた課題の一つとして番環境(linux)と開発環境の違いがあります 開発マシンをwindowsからmacに変えたのも環境の違いをなるべくなくすためでした また複数人で開発を行う場合、各々の開発環境の違いは当に悩みの種でした これまでにvmwereなどを導入してファイルを配ったり、構築手順書を作って配ったりしていましたがやはりベストな方法ではありませんでした vmを使った場合結局scp/ftpなどで編集したファイルのアップロードを行う必要があったり、開発サーバの構成管理が出来ませんでした この問題を解決してくれる方法が今僕の中でブレイクしているvirtualbox + vagrant + chef + gitで構築する開発環境構築です 今回はcakephpプロジェクトを進める場合の環境構築してみます virtualbox + vagra

    自分の中でブレイクしている、vagrant + chef + gitで開発環境を構築する - ロックとチュウーハイとこりんがるな日々
  • XML - 2.x

    XML¶ class Xml¶ Xml クラスはすべてリファクタリングされました。 PHP 5 には SimpleXML と DOMDocument があり、 CakePHP で XML パーサーを再実装する必要がないからです。 新しい Xml クラスは配列から SimpleXMLElement や DOMDocument または逆方向への基的な変換を行います。 Xml クラスへのデータのインポート¶ CakePHP 1.3 では、 Xml クラスへデータをインポートするために、コンストラクタへ 配列、 XML 文字列、 URL やファイルパスを渡すことができました。 CakePHP 2.0 では、 Xml::build() を使うことで可能になります。 Xml オブジェクトが返るまでの間、 SimpleXMLElement または DOMDocument オブジェクトを返します。オブジ

  • 極めたいw CakePHPのルーティング | Creazy!

    先週のCakePHP勉強会で、akiyanさんが routes.php に関する発表をやっていて、今までになかったルーティング情報のまとめみたいな資料になっていて多くのBakerが目から鱗状態になったと思います。ボクもそんな中の一人ですが、忘れないうちに復習してみようとおもいます。 内容的には、 ・Routesの設定 :: 環境設定 :: CakePHPによる開発 :: マニュアル :: 1.2 Collection :: The Cookbook ・極める routes.php (CakePHP 1.2) : akiyan.com とかぶりますので、まずはそちらのページを熟読される事をオススメします。 また、routeの確認にはユニットテストが有効です。 shin1x1さんが詳しいエントリーを上げてくださったのでこちらも必読。 CakePHP routes.phpの確認はユニットテストで

    極めたいw CakePHPのルーティング | Creazy!
  • 【CakePHP2.3】必須プラグイン(DebugKit) : 脱落エンジニアの奮闘日誌

    いまさら紹介するまでもないんだけれど DebugKitっていうプラグインは必須です。 CakePHP2.3から topページ(に見つめられるページ)にも DebugKitが有効になってないよとメッセージが出るように なっています。 だったら、はじめから入れとけばいいのに。 【その1】 まずは、こちらからDebugKitをダウンロードしてきます。 DebugKit 僕は、ZIPってボタンを押してダウンロードしました。 【その2】 解凍すると、debug_kit-masterというフォルダになりますが DebugKitというフォルダ名にリネームします。 【その3】 CakePHPプロジェクトの app/plugin 下に、DebugKitフォルダを 放り込みます。 【その4】 app/Config/bootstrap.phpの70行目あたりの コメントアウトされている箇所を解除します。 /

    【CakePHP2.3】必須プラグイン(DebugKit) : 脱落エンジニアの奮闘日誌
  • CakePHPのレールの外し方(CakePHP勉強会 uluru 2013/04/19) - cakephperの日記(CakePHP, Laravel, PHP)

    株式会社うるるで開催された、第1回CakePHP勉強会で発表してきました。 今回のお題は、「エンジニアとデザイナーの協業」でした。 デザイナー向けというのは、実は3回目ぐらいなので何を話そうかなと悩んでました。悩んだ末に、プログラマがどこまでデザイナに優しいCakePHPにカスタマイズできるかやってみようというストーリにしました。 CakePHPのレールの外し方 (CakePHP勉強会@uluru 20130419) from ichikaway 一番言いたかったことは、「ルールは最後に自分たちで決める、決める上で何が正しいかはプロジェクトごとに違うので、世の中で正しいとか、これがCake流だとか、ベストプラクティスとか言ってるのに流されすぎない方が良い」ということでした。 CakePHPでも積極的にヘルパー使わないとか、レイアウトファイル使わないとか、Apache側のmod_rewrit

    CakePHPのレールの外し方(CakePHP勉強会 uluru 2013/04/19) - cakephperの日記(CakePHP, Laravel, PHP)
  • GitHub - electblake/CakePHP-Simplepie-Plugin: SimplePie Plugin for CakePHP 2.X

  • [CakePHP] cronからの実行 | HAPPY*TRAP

    cronからCakePHPのシェルを実行するサンプルです。 シェルの作成 /path/to/app/Console/Command/ExampleShell.php1 2 3 4 5 class ExampleShell extends AppShell { public function hello() { // ここに処理を書きます } } cronの設定 00 * * * * /usr/bin/php /path/to/app/Console/cake.php -app /path/to/app/ example hello >/dev/null 2>&1 ※「-app」で、appディレクトリのパス(/path/to/app/)を渡しています。 環境 PHP 5.3.10 CakePHP 2.1.0

  • CakePHPで様々なオブジェクトへのアクセスの仕方 | X->A->O

    はじめに CakePHPで何らかのオブジェクトを操作する場合、対象となるオブジェクトの種類やどこからアクセスするかによって方法が異なる場合があり、それ以前にそもそもインスタンス化されていないことを知らずにアクセスしようと無謀な挑戦を試みたりすることがあります・・・よね?自分の経験上、始めたばかりの時はここで躓くことが結構多く、今でも分からずに調べることが多いですし、あまり使っていないと同じ事を何度も調べたりもしてしまいます。このエントリは、あるオブジェクト「に」あるオブジェクト「から」アクセスする方法について調べたものの備忘録です。 初心者のかたはどうぞ「 初心者の方へ 」にまず目を通してください。 内容は適宜追加・修正される可能性があります。 すべてCakePHP2系の情報です。1系の情報が今後追加されることはありません。 可能な限り公式ドキュメントへのリンクを張っています。日語訳のあ