ja en ja en ja ja ja ja ja ja ja ja zh ja ja en ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja en ja ja ja ja ja ja en es en es pt ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja en ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja ja zh ja ja ja ja ja ja ja ru ja ja ja en
CakePHPでDBに関連しないパラメータはヘルパーで書くべきか? (Re:CakePHP修行! | idea*idea) : akiyan.com
CakePHP修行! | i d e a * i d e aが更新されました。少々長くなるので2回に分けます。
url('/users/login'); ?>" method="post">    email and password do not match!        email   input('User/email', array('size' => 30)); ?>     password   input('User/pwd', array('size' => 20)); ?>          save my info?         submit('Let me in!'); ?>         forgot your password?
おおむね問題無さそうです。しかし中の人は納得が行かない様子です。
「save my info?」のところをどう処理したらいいかわかりません。checkboxの表現もわからなければ、データとしてどう持つべきかもよくわかりません。そういうときは「ザ・後回し!」。
checkboxの値がモデルと関連せず、checkboxがhtmlヘルパーを使わずに書かれていること言っているのだと思いますが、実はこれでもよかったりします。
まず、この書き方のときのcheckboxの値は $this->params['form']['save'] で参照できます。
次にcheckbox用のヘルパーとして$html->checkbox()がありますが、Cakeのフォーム用のヘルパーに渡せるキー名は「モデル名/フィールド名(例:$html->checbox('Example/example', null, array('checked' => $example_checked);)」に限られています。モデル名もフィールド名も必須です。
むりやり $html->checkbox('save', null, array('checked' => false)); と書いた場合、ヘルパーの中でNoticeエラーが発生してしまいます。ただ、一応inputタグは出力されるので、app/config/core.php のDEBUG値を0にしているとエラーが出ず正常に動作しているように見えてしまいます。異常に気付くためにDEBUG値は開発中は2にしておくことをおすすめします。
というわけで、DBに関連しないようなパラメータをヘルパーで扱うときは存在しないモデル名を指定して書くことになります。例えば $html->checkbox('Param/save'...といった感じで書けば、$this->data['Param']['save'] で参照できます。存在しないモデル名を書くことが何となく気持ち悪ければヘルパーを使わずに書いてもよいです。このあたりはTPOと好みで判断してください。
ちなみに僕はDBに関連しないときはヘルパーを使わずに書く派です :)
カテゴリ:ホーム » ブログ » IT » プログラミング » CakePHPでDBに関連しないパラメータはヘルパーで書くべきか? (Re:CakePHP修行! | idea*idea)
前の記事:Re: idea*idea CakePHP修行 #7~9「DB設計」「bake.php」「scaffold」
後の記事:Re: CakePHP修行 #011 無限リダイレクトに気をつけろ
コメント / トラックバック
コメント / トラックバック 1 件
shin1x1 より:
2007-06-29 07:34
ヘルパ使わない派にもう一票 ノ
Cakeのヘルパはちょっとクセがあるので適材適所で。
akiyan.com とは
個人サイト。管理人は秋田真宏。ニックネームは「akiyan」。
「今までの認識を覆(くつがえ)す、わかりやすい記事を書く」ことを目標にしているサイトです。話題の中心は生活とウェブ技術系です。
UberEATSの配達員をリリース当日にやってみた
iPhone の修理補償のためにAppleCare+や携行品保険に入ってはいけない
UR賃貸住宅が最強なことを惜しみなく紹介
あなたの知らない照明術
ためしてガッテンのカレー特集がすごい!
5泊5000円台の貸しふとんで、お客様用ふとんを持たない暮らし
ブログカテゴリ・月別一覧
エンターテイメント (199)
ビジネス・政治経済 (175)
生活・ライフスタイル (246)
2022-09-14 海岸や河川でバーベキューができるか調べる方法
2022-02-02 SequelizeでJSONフィールドをupdateする場合はsetメソッドを使う
2022-01-24 SwitchBotロックをSiriショートカットで「解錠」はできない
2022-01-04 テスラモデル3にTPMSセンサー無しで社外品ホイールとスタッドレスタイヤ を取り付けました
2022-01-01 サーフィンを始めました
2022-01-01 テスラモデル3ロングレンジに乗り換えたらアプデが楽しみになった
2021-12-29 歯列矯正を始めてからよく食べてるもの、完全食、フリーズドライお粥、豆腐 etc
2021-12-28 日光市ワーケーション補助金は最低1名から、申請はメールでOK
2021-11-19 2021年に買ってよかったもの
2021-08-12 自治体コロナワクチン予約は早朝チェックで最速で受けられる
akiyan.com 管理人メモ
自衛隊イラク日報 バグダッド日誌/バスラ日誌 一覧
エンコードマニアックス
オンラインCSS自動整形
はてなブックマーク人気エントリー
Copyright 1997,2022 akiyan.com, All rights reserved.