スキップしてメイン コンテンツに移動

CakePHPのflash Messageをいじる

CakePHPのTipsが続いておりますが、細かいネタを思いついた時に投下していきます。



flash MessageのHTMLをいじる

セッションを利用したflash Messageは非常に便利ですが、CakePHP標準のCSSをはがすと単なるdivタグだけでしょぼくなります。
これを解決する方法は2つあります。

既にあるクラスを利用してCSSを適用する場合

別の所で作ってあるCSSを利用したり、bootstrapのアラートを利用する場合は、テンプレートなど作る必要はありません。
$this->Session->setFlash('フラッシュメッセージだよ!', 'default', array('class'=> 'alert alert-success'));

とすると、以下のようなHTMLを出力します。
<div id="flashMessage" class="alert alert-success">フラッシュメッセージだよ!</div>

上は、bootstrapのアラートを利用した例です。


エレメントを作って利用する場合

flash Messageの部分をエレメントにして、HTMLやCSSでゴリゴリデコる事もできます。

エレメントに以下のHTMLを保存します。ファイル名は「customFlashMessage.ctp」です。
<div class="alert alert-error"><? echo $message></div>

保存できたら、ソースコードからsetFlash()する際に呼び出すだけです。
$this->Session->setFlash('カスタムフラッシュメッセージ!', 'customFlashMessage');
// エレメントの呼び出しには拡張子は必要ありません

とすると、$messageにflash Messageが入った状態で出力されます。
<div class="alert alert-error">カスタムフラッシュメッセージ!</div>

目的に応じて利用したいところです。

see also:
[PHP]今更のCakePHPまとめ
CakePHPの細かいTIPS Twitter Bootstrapとの絡みとか

コメント

このブログの人気の投稿

[VB.NET]オレオレ証明書でSSL通信するための短絡的な解決法

VB.NETソフトウェアでサーバーと通信することはよくある事だと思いますが、最近はHTTPを使って明けっ広げに刺しに行くよりHTTPSを使って暗号化してこそこそやった方が時代の流れに即した感じですよね(違うか)。 いちいちテスト環境でSSL証明書を用意するのも面倒だということで、セキュリティ的には全くよろしくない方法で迂回できるので紹介します。

[JS]Canvasでよく使う描画テクまとめ

HTMLで画像をいじくりたい時は、canvasを利用して編集するのは一般的ですが、WindowsストアアプリではHTML+CSS+JSでのアプリ開発ができる事もあって、簡単な画像編集であれば、C#やVBを使うより分かりやすいし資料が多く、C++でDirectXをガリガリ書くよりお手軽。入出力もファイルピッカーを使えば簡単に実装できます。今回は、Windowsのコードではなく、Canvasを利用する時のJavaScriptを使いどきに合わせてまとめていきます。

curl の基本的な使い方 -設定編-

今回のcurl TIPSは、curlをより日常的に使っていくためのHow toです。curlには、数多くのオプションが用意されていて、それらを組み合わせる事で様々な事が楽になるでしょう。サービス監視の自動化などにはまさにcurlの得意分野です。 今回は、curlを更に自分のものにしていくために大事なカスタマイズの部分を解説します。