タグ

cakephpに関するmatsuoshiのブックマーク (118)

  • cakePHP Transitionコンポーネント – Logicky BLOG

    便利らしい。調べよう。fileBinderの例文で使われているので調べた。多分これだろう。 24時間cakePHP Transitionコンポーネント1.0 24時間cakePHPといのはいい名前だな。 ↓TransitionComponentの紹介記事 TransitionComponent for CakePHPで簡単確認画面実装 Transition Componentは、セッションと、主にCakePHPのモデルバリデーションの機能を利用してページ遷移を管理しており、 使いこなすとページ遷移管理を非常にすっきりとしたコードで実現することができます。 これはフォーム入力→確認画面→完了画面みたいなやつをすっきりと書けるということだなー!いいねえ。 追記:cakePHP2.3でTransitionコンポーネントを使ってみる 使ってみたらかなり便利だった。まだ初歩的な使い方しかしてないけど

    cakePHP Transitionコンポーネント – Logicky BLOG
  • CakePHP2 アプリケーションを Heroku で動かす設定

    CakePHP2 アプリケーションを Heroku 上で動かす設定についてです。 以前のエントリにも書きましたが、Heroku で Web アプリケーションを動かす際に重要なのは、Web サーバ自体(Heroku では、Dyno)に、アプリケーションの状態(データ、セッション情報、ログ等)を保持させないということです。 Heroku の Dyno は、デプロイの際や、定常的な再起動により、破棄されるため、記録されたファイルは消えてしまいます。よって、こうしたデータファイルは、アドオンなど外部に記録する必要があります。 Heroku では、アドオンを活用するのがポイントですので、ここでは、主に CakePHP アプリケーションからこうしたアドオンと連携する方法を見ていきます。 Environments Library as a plugin まず、開発環境と Heroku 環境で設定値を切り

  • マドリードで見たCakePHP3の明るい未来 - Engine Yard Blog

    毎年恒例のCakePHPの公式カンファレンス、CakeFestが2014年8月21日にスペイン、マドリードにてワークショップ2日間、カンファレンス2日間の合計4日間で開催されました。 今回も講演を採択されたので参加してきましたが、ハイライトをご紹介します。 スペイン開催により欧州参加者多数 今回はスペイン、マドリードが開催地に選ばれました。ヨーロッパで開催される場合はイギリス、マンチェスターが直近では3回連続で選ばれていました。 目新しい開催地という事でやはり地理的に近いスペインやヨーロッパ諸国からの参加者が多く非常に活況でした。 エストニアやフィンランド、ノルウェーなどから来た開発者の方に会うことができ面白い話を聞くことができました。 ウェブサイトなどを見ていても感じにくい点ですが、CakePHPの利用者は多様性が実に高くさまざまな国で利用が進んでいます。 参加者数も130人弱という事で

    マドリードで見たCakePHP3の明るい未来 - Engine Yard Blog
  • 【CakePHP】AuthComponent::$unauthorizedRedirect | チラシの裏

    CakePHP 2.3.0で導入された、AuthComponentのプロパティ、$unauthorizedRedirect。 公式の移行ガイドを読む限り、「falseにすれば、権限承認に失敗した場合に、リダイレクトする代わりに403エラーを返す」とは書いてあり、また、Bakeryを読む限り「stateless認証に対応するため」なのは間違いなさそうだが、どう機能するのかよくわからない。 $unauthorizedRedirect = false しただけではリダイレクトされちゃうんだけど。 というか、AuthComponent.phpを読む限り、そもそも$unauthorizedRedirectが参照されるのは、authenticate(誰がアクセスしてきのかを判定)のあとのauthorize(そのユーザーにアクセス権があるかを判定)の場面。 つまりはどのみち最初は$loginAction

  • 「CakePHPで学ぶ継続的インテグレーション」- CakePHPを使って継続的インテグレーションを実践するながれを解説した書籍が出版されます - kaz29

    一部の方には事前にお話していましたが、わたしも共著で執筆に参加した「CakePHPで学ぶ継続的インテグレーション」という、CakePHPを使って継続的インテグレーションを実践するながれを解説した書籍が9/19にインプレスから出版されます! CakePHPで学ぶ継続的インテグレーション 作者: 渡辺一宏,吉羽龍太郎,岸田健一郎,穴澤康裕,丸山弘詩出版社/メーカー: インプレス発売日: 2014/09/19メディア: 単行(ソフトカバー)この商品を含むブログを見る 既にインプレスさんのサイトやAmazonにも掲載されています。まだ、書影が反映されていませんが、予約受付中です!是非ポチッとお願いします(^^。 今年頭頃のミーティングから約9ヶ月、途中業が忙しくなかなか執筆がすすまなかったりもしましたが、なんとか書き上げることができました。今回、初めて僕自身の企画+執筆のとりまとめをすることに

    「CakePHPで学ぶ継続的インテグレーション」- CakePHPを使って継続的インテグレーションを実践するながれを解説した書籍が出版されます - kaz29
  • 暇人プログラマの日記

    DBを使わないモデルにて配列をsetしようとすると DBに接続しにいき例外が発生する Hoge.php<?php class Hoge extends Model { public $useTable = false; public $validate = array( 'a' => array( 'multiple' => array( 'rule' => array('multiple', array('in' => array(1, 2), 'min' => 2)), 'message' => '2個以上選択してください' ), ) ); }TestController.php<?php App::uses('AppController', 'Controller'); class TestController extends AppController { public $uses

  • CakePHP 外部PHPプログラムからライブラリのように使う方法 – MT Systems

    情報は数年前から散見できたが、使いたくなってきたので試してみた。驚くほど簡単に利用でき、今後のアプリケーション作りに活かせるかな、と云う事で備忘録となります。 先ずはソース。 <?php $_GET['url'] = 'favicon.ico'; require_once = 'webroot/index.php'; $dispatcher = new Dispatcher(); $result = $dispatcher->dispatch('/posts/index', array('return'=>false)); echo $result; これで posts コントローラの index アクションを実行し、レンダリングされた結果が表示できる。 $_GET[‘url’]に文字列「favicon.ico」をセットすると、require_once で読み込んだ index.php

  • #CakePHP 爆速でAPIを実装するチュートリアル - 忍び歩く男 - SLYWALKER

    スマートフォンアプリのバックエンドや、JSフレームワークのバックエンドとして、JSONやXMLを返すAPIをサーバサイドで実装する機会は多いと思います。 今回は、ComposerとCakePHP2.4、FriendsOfCake/crudを使って爆速で実装してみます。 できあがりは、これ slywalker/cakephp-app-api_sample CakePHPのインストール まず、プロジェクトのディレクトリにcomposer.jsonをつくります composer.json { "require": { "pear-cakephp/cakephp": "2.4.*" }, "config": { "vendor-dir": "Vendor/" }, "repositories": [ { "type": "pear", "url": "http://pear.cakephp.org

    #CakePHP 爆速でAPIを実装するチュートリアル - 忍び歩く男 - SLYWALKER
  • ScaleOut | Supership

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

    ScaleOut | Supership
  • CakePHPで位置情報(Geometry型)を扱う場合 - 枚方宿から見るセカイ

    MySQL側の環境を整える Geometory型はMySQLで用意しないといけないので、必要なテーブルを用意します。SPATIAL INDEXがInnoDBでは使用できないので、それ以外のDBを指定する必要があります。今回はMyISAMを使用しました。 CREATE TABLE posts ( id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, title VARCHAR(50), body TEXT, latlng geometry NOT NULL, created DATETIME DEFAULT NULL, modified DATETIME DEFAULT NULL SPATIAL INDEX ( `latlng` ) ) ENGINE=MyISAM;既にテーブルが用意されている場合は、ALTER TABLEすれば構いません。Geometry型

  • Facebookでログイン・・だけじゃない! CakePHP-Facebook-Plugin

    プラグインをロードする //app/Config/bootstrap.php CakePlugin::load('Facebook'); Facebookデベロッパーズよりアプリの登録を行う Facebookのアプリケーション登録をしないと、ログインも何も使うことが出来ません。 アプリの登録例 今回私はローカルのMAMPでやってみましたが、どう考えても存在しないようなドメインの形だと登録出来ないので、それっぽい、存在しそうなドメイン名で登録しました。 さらに、facebookでログインするWEBサイトの登録部分は Facebookでログイン後にリダイレクトされることになるので、ログイン後に表示させたいURLを登録すればよいみたいです。 アプリ情報を記載する app/Config/facebook.phpに Facebookのアプリ情報を記載します。appIdとapiKeyの2つはだいたい同

    Facebookでログイン・・だけじゃない! CakePHP-Facebook-Plugin
  • CakeFest2013で発表されたCakePHP3の未来 | Engine Yard Blog JP

    2013/8/29からの4日間、CakePHPの公式イベントであるCakeFestがサンフランシスコで開催されました。2年ぶりにアメリカでの開催となった今回は参加者も多くとても賑わっていました。今回のイベントの基調講演でCakePHP3の現状についていくつか情報が出てきましたのでご紹介します。 CakePHP3の気になる新機能 現在はブランチで開発されているCakePHP3ですが、今年のうちにはベータなどのリリースが行われ最終的なリリースは来年になる見込みです。PHP5.3を飛び越えて5.4に対応する形になり名前空間などコードの見た目をぐっと現代的に変える変更が数多く行われています。今回の発表で言及された変更点は下記のとおりです。 PHP5.4以降に対応 namespaceに完全対応 DATABASE_CONFIGが廃止され、Configureに統合 Composerに標準対応 ルーティン

  • ScaleOut | Supership

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

    ScaleOut | Supership
  • [CakePHP]WordPressよりもckeditor/ckfinderを使ってみた – メディア運営ニッキ

    [CakePHP 2.2.3] 1月から、「みんなの英語ひろば」で記事コンテンツを配信し始めました。 http://eigohiroba.jp/t 当初、ベースのシステムはCakePHP、記事コンテンツWordPressと分けていたのですが、この2つのシステムの相性がよろしくないので、記事コンテンツ向けにWordPressはやめて、普通にCakePHPで作ることにしました。 3日程で作ることができたのですが、、今回ご紹介するckeditorとckfinderというツールのおかげでかなり楽でした。こちらはjavascriptでテキストエリアに簡単に機能を付加できる多機能エディタで、当に、かなりのスグレモノです。 ちなみに、ckeditorが体で、ckfinderは追加機能で、画像アップロード機能を追加するのに使いました。 導入方法は簡単 CakePHPの場合、それぞれダウンロードしたファ

  • http://www.cakephpcheatsheet.com/index.php

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

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

    バリデーションのベストプラクティス - 24時間CakePHP
  • アソシエーション先のモデルで使用しているビヘイビアのafterFindを動かす方法 - okomeworld

    デフォルトだと何故かビヘイビアでafterFind定義していても動いてくれない。 ちょっと不便だったので動くようにしてみました。 <?php class AppModel extends Model { function afterFind($results,$primary=false) { $results = parent::afterFind($results,$primary); if(!$primary) { $params = array($results,$primary); $options = array('modParams' => true); $results = $this->Behaviors->trigger($this,'afterFind',$params,$options); } return $results; } } ?> モデルクラスはBehav

    アソシエーション先のモデルで使用しているビヘイビアのafterFindを動かす方法 - okomeworld
  • CakePHPで様々なオブジェクトへのアクセスの仕方 | X->A->O

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

  • プラグイン/CakeDC/users - CakePHP2 Memo

    概要 このプラグインを入れれば殆どできてしまう。 https://github.com/CakeDC/users ユーザー登録 メールでのアクセストークンによるアカウントの認証 ログイン メールでのトークン送信ベースのパスワードリセット プロフィールページ ユーザー検索 管理画面からのユーザー管理 仮登録メールを送って、書いてあるURLをクリックしたら登録。 ログイン情報の保持。 パスワード再発行。 新しいユーザーの追加。 インストール ダウンロード https://github.com/CakeDC/users CakeDC-users-1.2-0-ga1f2bcf.zip /app/Pluginフォルダにコピー解凍 $ unzip CakeDC-users-1.2-0-ga1f2bcf.zip リネーム $ mv CakeDC-users-a1f2bcf/ Users 必須プ

  • コンソールで自作shellを実行するとパーミッションエラーになる - Digitarhythm

    結構はまりました。原因がわかるまで意味がわからず時間をくってしまったので書いておきます。 症状 こんな感じのエラーがだーーーっとでまくり。 <?php SplFileInfo::openFile(/app/tmp/cache/persistent/myapp_core_cake_console_):failed to open stream:Permission denied in /lib/…/FileEngine.php line 293 ?> で、/app/tmp/cache/modelの中身を削除して実行すると、今度はブラウザ側で同じエラーが表示される。 原因 /app/tmp/cache/modelと/app/tmp/cache/persistent内のキャッシュファイルのパーミッションが644になっている。 自分の環境だとブラウザからのアクションで生成されるキャッシュファイルは

    コンソールで自作shellを実行するとパーミッションエラーになる - Digitarhythm