View

フォーム入力画面と確認画面で共通で使えるXformHelper

Cakephp1.2.6追記(2010/12/16): コメントでPHP5.3の動作不具合報告を頂いたので対応しました。報告ありがとうございました。現状、PHP5.2.15, PHP5.3.4で確認し、CakePHPは1.3.6, 1.2.9で確認しました。gitの最新版か、githubにあるダウンロードボタンから0…

edit画面でうまくURLが作れなかった

Cake1.2.6 携帯画面で、addはうまくいくのに、edit時だけform::createのurlオプションでうまくurlが作れなかった。 routes.phpはこうなってて、 Router::connect('/mobile/users/:action/*', array('controller' => 'user_mobiles', )); edit時は勝手にurlの…

拡張子を好きなものに変える方法の追い方

CakePHP 1.2.1です一つ前の記事で、 「ctp以外の拡張子ファイルをviewファイルとして扱う」 http://d.hatena.ne.jp/cakephper/20090205/1233809420 を書きました。その方法はソースコードを追っていくものだったので、今回はその流れを書いていきます。まず…

ctp以外の拡張子ファイルをviewファイルとして扱う

CakePHP 1.2.1です。 cakeの場合、viewファイルはindex.ctpというように、拡張子がctpとなってます。 でもviewファイルは.htmlとか.phpとか、好きな名前でやりたいよって場合どうするか。結論から言うと、コントローラーで class HogeController extends App…

よくある確認画面でのhiddenデータの持ち回り ver2

CakePHP 1.2 RC3を利用しています。前に書いた記事 よくある確認画面でのhiddenデータの持ち回り で、自作ヘルパーを呼び出す際に、引数にモデル名を入れて、POSTされた該当モデル名のデータを展開してhiddenにセットしていたのですが、引数に何も指定せず、…

CakePHP1.2 RC3にアップデートしたらSelectでワーニング

CakePHP1.2 RC3がリリースされたので早速 cakeフォルダを入れ替えてアクセスしてみたら、$form->selectタグでワーニングが出てた。 ワーニングはarray_marge関係のエラーで、cake/lib/view/helper/form.phpのエラー行を見ないとSelect関係のエラーだとは分か…

Viewに関する備忘録

Viewに関して色々と忘れそうなのでメモ■エレメントを読み込み views/elements/navi_header.ctpの読み込み element("navi_header" ); ?> ■フォーム開始タグでURLを指定 URLにhttpから記載すればどのファイルへもPOST/GETで渡すことが可能 create('Model', arr…

お好きなファイルをViewファイルにする

Cakephp1.2RC2の環境です。コントローラで下記のようにすればOK. $filename = 'hoge.html'; $template = VIEWS . $this->viewPath . DS . $filename ; $this->render(null,null, $template ); renderの第2引数はレイアウトファイルの指定なので、レイアウト…

$form->inputを複数項目使いたいときは

cakePHPで作られている簡易ECシステムBakesale http://bakesalehq.com/ のソースコードを見てたら、Viewで下記の記載を発見。 echo $form->inputs(array('name', 'price', 'weight', 'quantity', 'legend' => __('Add product', true)));inputsを使えば複数…

コピペ用の簡易View生成コマンド(KYview)

cakeを使うと、ロジックの部分はすごく簡単にかけるようになるんだけど、DBのカラム数が多いとViewにセットした変数を記述していくのも結構一苦労。 bakeとか使えよって感じだけど、簡易管理画面以外はbake使わないし、bakeの生成するviewは余分な情報が多す…

エラー画面でレイアウトファイルを指定する方法

cakePHP1.2rc2の環境です。cakePHP1.1の場合は下記の.ctpを.thtmlにすれば動くと思います。cakePHPは、存在しないURLのリクエストがくると、404エラー画面を出しますが、この画面の内容を変更する場合は、 app/views/error/error404.ctp というファイルを置…

メール送信時に(Viewの)テンプレートファイルを使う方法

CakePHP 1.2.0.7125 RC1.を使ってるのですが、メール送信時にメール本文をテンプレート化してそれを読み込んで送信しようと思い、検索したところ、controllerのrenderの内容を出力するob_get_clean(); の存在を知り、いろいろやってたんですがどうもうまくい…