タグ

cakephpに関するo_hiroyukiのブックマーク (34)

  • CakePHPのマイグレーション

    CakePHPで開発をしているときハマったので、実行手順を含めメモ。 環境 CentOS 6 PHP-5.4.11 CakePHP 2.2.7 MySQL 5.5 ※Migrationを利用するためのプラグインの導入については省略。 1.まず、カレントディレクトリをapp(作成するすべてのアプリケーションファイルがここにある)にする。 2.マイグレーションの雛形の作成 2-1.コマンド「./Console/cake Migrations.migration generate」を入力する ・モデルが存在しない場合は、引数に-fを付ける必要があります。 「./Console/cake Migrations.migration generate -f」 ○エラーパターン ・phpのパスが不正のためエラーになる →/Console/cake を開いて40行目付近を見ると、phpのbinパスを指定す

    CakePHPのマイグレーション
  • CakePHPでjQueryのAjaxを使う方法

    CakePHPでAjaxを使う方法をご紹介していきます。 Ajax処理を書くとき、CakePHPでは色々な手法があるので簡単にまとめていきます。 また、下記の記事でも改めて解説していますので御覧ください。 CakePHPでJSONを返すAPIを作る 初めてCakePHPでajaxを使った時にMissingViewでハマり、 CakePHP×Ajaxを解説しているサイトが見当たらず苦戦した思い出があります。 非常に便利なAjaxですが、CakePHPで使用する場合はAction側で一手間加えてやる必要があるのです。 ということで今回はCakePHPでAjaxを使う方法について解説します。 注: CakePHPにはAjaxHelper(JsHelper)が用意されていますが、今回は使いません。 というのも、個人的に使い勝手があまり良くない印象があるので。 (そもそもjavascriptはjsフ

    CakePHPでjQueryのAjaxを使う方法
  • CakePHP 2.5、Containable ビヘイビアチュートリアル♪

    Containable ビヘイビアをもっと理解したいと思いましたの。 Containable — CakePHP Cookbook 2.x documentation なんとなくわかるのですけれども、実際に体験したいと思いましたので、自分人のためのチュートリアルを投稿で実施したいと存じます♪ Containable ビヘイビアでできることまとめ 深い階層のデータを取得できるのではなく、取得したいモデル、モデルのカラムのデータを指定することができる。 逆に、モデルを記述しないことで取得したくないデータを除いて取得することができる。 単一のモデルに設定したアソシエーションのデータだけではなく、アソシエーションをたどってつながりのあるモデルのデータを取得することができる。 試した環境 以下の環境で、予め CakePHP をインストールしておきました。 CakePHP 2.5.4 PHP 5.4

    CakePHP 2.5、Containable ビヘイビアチュートリアル♪
  • CakePHPのpaginateが複数のORDER BY指定を受け付けない件 - Qiita

    Help us understand the problem. What is going on with this article?

    CakePHPのpaginateが複数のORDER BY指定を受け付けない件 - Qiita
  • Jsヘルパーを使用してAjax更新

    更新処理でページ遷移を伴う場合、ページ全体をレスポンスするのに対して、Ajax処理ではページの一部のレスポンスが可能となるためサーバからの通信量を抑えることが可能となります。デモ head <?php // jQuery echo $this->Html->script( 'jquery.min.js', array( 'inline' => 'false')); // Jsヘルパーが生成するJSを出力させる echo $this->Js->writeBuffer( array( 'inline' => 'true')); ?> ビュー (Views) // App/Views/Ajaxs/js_submit_form.ctp <?php echo $this->Form->create( 'Testtable', array( 'type'=>'post')); echo $this->

    Jsヘルパーを使用してAjax更新
  • CakePHP setFlashで出力されるメッセージのスタイルを変える方法 | hijiriworld Web

    ディフォルトの使い方 > コントローラ $this->Session->setFlash('メッセージ'); > ビュー <?php echo $session->flash(); ?> > 出力されるHTML <div id="flashMessage" class="message">メッセージ</div> > CSS(参考までに) .message { background-color: lightYellow; border: 1px solid #E6DB55; padding: 10px; } というのがディフォルトの使い方です。 オリジナルのレイアウトを用意していなければ、レイアウトは default.ctp が適用されています。 とても便利な機能なので、できればサクセスメッセージとエラーメッセージのスタイルを分けたいところです。 setFlashメソッドはパラメーターが指定

  • CakeEmailでメール送信(@gmail)

    CakePHP 2になって追加されたクラスCakeEmailがシンプルに使えます。これを使用してメール送信を行う処理を実装してみました。 CakeEmailクラスの読み込み /app/Config/bootstrap.php(全体的に使用する場合)もしくは各々の(使用する)コントロールに定義します。 App::uses( 'CakeEmail', 'Network/Email'); CakeEmailの設定 database.phpと同様、/app/Config下に設定ファイルが用意されています(email.php.default)ので、email.phpにリネームして下さい。そこに使用するメールサーバの設定を行います。以下はGmailからの送信設定を追加しています。 // /app/Config/email.php class EmailConfig { public $default

    CakeEmailでメール送信(@gmail)
  • Queries log for your AJAX requests — Bakery

    Have you ever needed to look inside what’s going on with your AJAX requests? With the rise of javascript-heavy applications it is becoming necessary to have more powerful tools for inspecting and debugging asynchronous requests without reloading the browser or using special browser plugins. With DebugKit 3.1, inspecting XHR requests is now possible. By default, all AJAX requests are logged into th

  • CakePHPでコントローラーやアクションごとにCSS&jsを切り替える方法

    CakePHPでコントローラーやアクションごとにCSS&jsを切り替える方法 CakePHPではアクションごとにViewを作成しますが、headerやfooterはlayoutsで書くのですべて共通になっていると思うんですよ。 で、このアクションではこのcssを読み込ませたいなと考えたとこでちょっとだけつまずきました。 投稿日2011年03月03日 更新日2011年04月02日 現在のコントローラーやアクション名をゲットする。 Wordpressみたいに現在のページ(コントローラー&アクション名)がわかれば分岐できそうですね。 以下でコントローラー名など取得できます。 コントローラー名

    CakePHPでコントローラーやアクションごとにCSS&jsを切り替える方法
  • Js/Cssファイルの読み込みや出力する方法

    CakePHPHTMLヘルパーにはjsファイルやcssファイルを読み込むためのメソッドが用意されています。ファイルを読み込むのに加えて、出力先を複数指定できるようになっています。 また、インラインに出力する関数も用意されており、動的に出力する際にも便利なようにつくられているようです。 javascriptファイルの読み込み javascriptファイルの読み込みを行うには以下のようにHtmlヘルパーのscriptにパスを指定します。 echo $this->Html->script( 'jsファイル(パス)'); // パスに//が含まれている場合は、CDNから取得される。 echo $this->Html->script( '//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js'); // App.jsBaseUrl(J

    Js/Cssファイルの読み込みや出力する方法
    o_hiroyuki
    o_hiroyuki 2015/03/26
    view,html helper
  • CakePHP ACL – アクセス制御リストを攻略する | hijiriworld Web

    ACLとは? Authコンポーネントは、ユーザ認証を実現する非常にシンプルで簡単なコンポーネントですが、あくまでも「そのユーザがログインしているか否か」ということのみです。 それぞれのユーザに応じて各種機能にアクセス権を設定するためのコンポーネント、それが「ACL – アクセス制御リスト(Access Control List)」です。 さて、このACL、CookBookにもチュートリアルがありますが、はっきり言って、これを読んでも理解不能です。むしろ読まないほうがいいと思います。 これが、ACLが難解と言われる要因でしょうか。 ACLのイメージ ACLは3つのデータベースから成り立っています。 ARO – ユーザ(ユーザやグループ) ACO – 対象物(ページやアクション) ARO_ACO – アクセス権の対応表 それぞれの関係を図で表すと、こんなイメージです。 要するに、ACLでは、ユ

    o_hiroyuki
    o_hiroyuki 2015/03/13
    acl
  • Migrationsプラグインの実践的運用 - 24時間CakePHP

    CakePHP Advent Calendar 2011 CakePHP Advent Calendar 2011 : ATND 20日目の記事です。 19日目:akiyanさんCakePHPの「OrderdBehavior」と「TreeBehavior」はマジで使うべき : akiyan.com イントロダクション CakeDCが提供しているMigrationsプラグインは、データベースのインクリメンタルなバージョン管理を行うプラグインで、githubホストされています。 RoR(Ruby on Rails)のMigrationsをリスペクトしているのは間違いなさそう(どこにも書いてないけど)ですが、中身はそれなりに違います。 Migrationsプラグインの詳細な説明は CakePHP Migrations plugin: easily version and deploy whol

    Migrationsプラグインの実践的運用 - 24時間CakePHP
    o_hiroyuki
    o_hiroyuki 2015/02/22
    migration
  • http://www.cakephpcheatsheet.com/index.php

  • ScaleOut | Supership

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

    ScaleOut | Supership
  • CakePHP2的 Sitemapの作り方

    と思っていたら、返って柔軟に作りにくいことが分かり、Bakeryの基的な手順にのっとって作ったほうが後々楽だったのでそのメモを。 なお、Bakeryは上記URLの手順はCakePHP1系ですが、基的なことはほぼ一緒ですし、以下記載するコードは2.4で動作チェック済みです。 ではでは、CakePHP2的sitemap。 基的にはControllerを作って、そのControllerに乗っ取ってview作ってルーティングでhttp://yourhost/sitemapにアクセス出来るようにするだけ。 SitemapsController.phpの作成 class SitemapsController extends AppController{ public $layout = 'xml/default'; public $uses = ['Post']; public $helpers

    CakePHP2的 Sitemapの作り方
  • CakePHP 2.x 系でサイトマップ XML を作る方法

    CakePHP 2.x 系でサイトマップ XML を作成します。サイトマップ XML についてわからない方は2年前に書いたサイトマップ XML 作成の基を参照してください。今回はサイトマップ XML を CakePHP で動的に生成する方法について触れていきます。CakePHP 1.x 系での作成方法については下記のページにまとめてありますが、CakePHP 2.x 系のために書かれたコードではないため、記事では下記のページのコードをベースに 2.x 系で使えるサイトマップ XML の作成コードを書いていきます。 How to create sitemap for cakephp – Stack Overflow コントローラを作成する 以下のようにサイトマップに関するコードを書いていきます。Time ヘルパーを使えるように宣言するところがミソです。サイトマップ XML には Rout

  • 【cakePHP】SSLと非SSLが共存するサイト

    ひとつのサイトの中にSSLページと非SSLページを混ぜる場合は注意が必要です。 http://book.cakephp.org/2.0/ja/development/sessions.html に書かれてあるように、session.cookie_secureをfalseにしないとcookieが継続できません。

    【cakePHP】SSLと非SSLが共存するサイト
  • (CakePHP 2.x) validationルールのalphaNumeric日本語対応する方法 | 日々の覚書…日常のことも少しだけ

    スポンサードリンク CakePHP CakePHPのバリデーションチェックで使う alphaNumericなんですが、 日語はチェックを通ってしまうという なんともしがたいものがあるようです。 しかし、これを直すやり方があるようです。 スポンサードリンク alphaNumericをオーバーライドする [CakePHP2]validationルールのalphaNumeric日語対応 こちらの記事に紹介してありました。 AppModel.phpに新しくalphaNumericを書いて オーバーライドしてしまうという方法です。 Model/AppModel.php public function alphaNumeric($check) { $value = array_values($check); // 配列の添字を数値添字に変換 $value = $value[0]; // 最初の値を

    (CakePHP 2.x) validationルールのalphaNumeric日本語対応する方法 | 日々の覚書…日常のことも少しだけ
  • CakePHP サニタイズでエスケープされた改行コードを元に戻す簡単なコンポーネントを作ってみる | Yasigani-ni Blog

    CakePHP サニタイズでエスケープされた改行コードを元に戻す簡単なコンポーネントを作ってみる time 2011/10/04 folder CakePHP 『Sanitize::clean』でサニタイズを行うと、改行コードもエスケープされます。 このままでは、『textarea』要素に入力された改行がない状態になり、想像していた表示にならないことがあります。 下記の赤文字の部分がサニタイズ時にエスケープされた改行コードです。 ▼サニタイズされた『textarea』要素のテキスト 登録時に『Sanitize::clean』を使用しサニタイズを行いました。\n\nこのテキストは確認用です。 このままでは『nl2br』関数も使用できないので、コンポーネント作成の練習も兼ねて、『\\\n』を『\n』に戻す簡単なコンポーネントを作りたいと思います。 (※表示では『\n』ですが、実際はエスケープシ

  • CakePHP 2.x のカスタムエラーページ作成 « Hello My World

    Cakephp のカスタムエラーページを作成したいと思います。 手段が多すぎるためか悩んでしまった。公式ドキュメントが分かりづらいので、ググってしまうとハマる気がする。 また、このページにたどり着いた方が、さらに迷わないように現在のバージョンは明記しておきたいと思います。cakephp v2.2.5 です。 ちなみに、私が腑に落ちるやり方なので、あくまでご参考程度に考えて頂ければと思う。 大きく分けて3パターン在ると思います。コントローラ、メソッドがない場合、DBにコンテンツが見つからない場合、異常系です。 では、さっそくやってみます。 1.コントローラー、メソッドが無い。 Config/core.php に追加する必要も、新たなクラスも必要ありません。 app/View/Errors/error_400.ctp を弄ればいいだけです。 ただ、これだけだと、layout に app