CakePHPのTipsが続いておりますが、細かいネタを思いついた時に投下していきます。
これを解決する方法は2つあります。
とすると、以下のようなHTMLを出力します。
上は、bootstrapのアラートを利用した例です。
エレメントに以下のHTMLを保存します。ファイル名は「customFlashMessage.ctp」です。
保存できたら、ソースコードからsetFlash()する際に呼び出すだけです。
とすると、$messageにflash Messageが入った状態で出力されます。
目的に応じて利用したいところです。
see also:
[PHP]今更のCakePHPまとめ
CakePHPの細かいTIPS Twitter Bootstrapとの絡みとか
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との絡みとか
コメント
コメントを投稿