- 1 名前:nobodyさん [2012/12/04(火) 13:06:36.87 ID:ExCLhBiP]
- CakePHPは、Ruby on Railsの概念の多くを取り入れた、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークです
CakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ 質問するときはCakePHPのバージョンを書きましょう ※他フレームワークとの比較等はスレ違いです ■本家 www.cakephp.org/ APIドキュメント api.cakephp.org/ github - cakephp github.com/cakephp the Bakery bakery.cakephp.org/ CakeQs cakeqs.org/ Issue cakephp.lighthouseapp.com/dashboard CheatSheet[1.2] (PDF) cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf ■日本語公式 cakephp.jp/ フォーラム cakephp.jp/modules/newbb/ cookbook(マニュアル) [2.x] book.cakephp.org/2.0/ja/index.html [1.3] book.cakephp.org/ja 前スレ 【PHP】フレームワーク CakePHP 14ホール目【v2.1】 kohada.2ch.net/test/read.cgi/php/1335859124/
- 145 名前:nobodyさん mailto:sage [2013/01/21(月) 13:22:07.22 ID:???]
- 何でCakeってfindの戻り値が只の配列なんですかぁ?
モデルのオブジェクト(の配列)返さなきゃ駄目だろ。 これ作った奴は全くもってオブジェクト指向ってものを理解してねぇんだな。 クソだクソ!
- 146 名前:nobodyさん mailto:sage [2013/01/21(月) 13:33:29.21 ID:???]
- 自分でそのように書き換えたら?
- 147 名前:nobodyさん mailto:sage [2013/01/21(月) 13:53:46.54 ID:???]
- 誰かそういうプラグイン作ってる人いなかったっけ
まったくうろ覚えだが
- 148 名前:nobodyさん mailto:sage [2013/01/21(月) 14:01:12.72 ID:???]
- ムリにCakePHP使わないで他の使えよ
- 149 名前:nobodyさん mailto:sage [2013/01/21(月) 14:19:09.21 ID:???]
- >>145
もう既に議論されまくってるよハゲ。 PHPのソース解析して実際にパフォーマンス計測した結果 配列にしておくべきと結論したんだよクズ。 CakePHP3になればデフォルトで選択可能になるみたいだがなクソムシ。 今はオブジェクト化ラッパーのプラグイン使えやウンコ。
- 150 名前:nobodyさん mailto:sage [2013/01/21(月) 18:43:32.93 ID:???]
- >>149
その議論追ってみたいんだけど、URLとかある? もしあったら貼ってくれまいか?
- 151 名前:nobodyさん mailto:sage [2013/01/21(月) 21:52:08.56 ID:???]
- その議論は知らんが、単純に配列の方が、オブジェクトのプロパティより速い。
自分で試せるよ。データベースの返り値を模した配列とオブジェクトで試してみ。
- 152 名前:nobodyさん mailto:sage [2013/01/21(月) 22:54:41.50 ID:???]
- >>151
配列の方がコスト低いのは分かるけどさ。 PHPのほかのフレームワークだと、オブジェクトにしてるのもあるから、 選択肢としてまったく無しじゃないと思うんだ。 そのなか、何で配列で行くことにしたのかなと思ってん。
- 153 名前:nobodyさん mailto:sage [2013/01/21(月) 23:17:20.53 ID:???]
- >>152
自分で書いたのもう一度読め
- 154 名前:nobodyさん mailto:sage [2013/01/22(火) 08:01:00.25 ID:???]
- だから、配列の方が速いからだろ?
そもそもオブジェクトである必然性は全くないし。
- 155 名前:nobodyさん mailto:sage [2013/01/22(火) 11:06:56.11 ID:???]
- 納得出来ないなら他のフレームワーク使えばいいだけだろ
わざわざ配列の方を採用しているところに「なんでオブジェクトにしないの?」 ってお前の主張を押し付けるのはおかしいだろ
- 156 名前:nobodyさん mailto:sage [2013/01/22(火) 11:45:09.75 ID:???]
- お前ら何と戦ってんの?
議論があるってことは両方にメリット・デメリットがあるってことだろ。 配列を採用するフレームワークもあるし、オブジェクトを採用するフレームワークもある。 コストが低いだけで、配列がベストって状況じゃないから、 理解を深めるために、過去にあった議論を見たいと思って何かおかしいのか?
- 157 名前:nobodyさん mailto:sage [2013/01/22(火) 13:18:25.40 ID:???]
- まぁ議論を追うことには意味があるな。英語だろうけど。レポよろ。
- 158 名前:nobodyさん mailto:sage [2013/01/22(火) 13:22:15.41 ID:???]
- 興味あるのに自分で探してもいなかったのか
- 159 名前:nobodyさん [2013/01/22(火) 13:22:42.68 ID:nr2JMr7e]
- CakePHP
gp48.net
- 160 名前:nobodyさん mailto:sage [2013/01/22(火) 13:51:21.23 ID:???]
- >>154
オブジェクトの必要がまったくない? オブジェクト指向の勉強一からやり直せ。
- 161 名前:nobodyさん mailto:sage [2013/01/22(火) 14:04:59.92 ID:???]
- オブジェクト指向と「配列のほうが早いからCakeは配列を採用している」
事と何が問題なんだ? オブジェクト指向だからって絶対その通りしなきゃいけない決まりなんて無いだろ。 お前は頭が硬すぎるんだよ
- 162 名前:nobodyさん mailto:sage [2013/01/22(火) 14:53:37.91 ID:???]
- オブジェクト指向では配列は使ってはいけないとでも言いたいの?
findの戻り値がオブジェクトだったら、そのオブジェクトは具体的にどんなメソッドを持っていて 配列よりどう便利なの?
- 163 名前:nobodyさん mailto:sage [2013/01/22(火) 16:45:51.69 ID:???]
- >>162
戻り値はオブジェクトの場合とオブジェクトの配列の場合があるだろ。 オブジェクトの利点だが、人に聞かなきゃ分からんの? Fat ModelとかDRYの原則とか理解してれば分かるはずなんだがねぇ。
- 164 名前:nobodyさん mailto:sage [2013/01/22(火) 16:46:40.64 ID:???]
- >>162
CakeEntityの作者のブログに利点は色々書いてあるから読んでみるといいよ
- 165 名前:nobodyさん mailto:sage [2013/01/22(火) 16:57:32.71 ID:???]
- d.hatena.ne.jp/basuke/20110908/1315479931
なるほどねえ いまだとafterFindでやらざるを得ないような処理をEntityオブジェクトでやらせたり出来るって感じかな 多分便利なんだろうな
- 166 名前:nobodyさん mailto:sage [2013/01/22(火) 20:52:44.17 ID:???]
- >>156
ほれ www.1x1.jp/blog/2006/09/cakephp_array_based_ar.html ただ、もっと詳しいエントリがあったはずなんだが見つけられなかった 確か開発者のブログだったんだけど、何年も前のことで忘れてしまったわ
- 167 名前:nobodyさん mailto:sage [2013/01/22(火) 21:37:05.39 ID:???]
- 利点()
そもそもPHPって時点でとてつもないデメリットがあるのに
- 168 名前:nobodyさん mailto:sage [2013/01/22(火) 22:04:06.66 ID:???]
- そのデメリットを超えるぐらいのメリットがあるから使ってるんだけどな
- 169 名前:nobodyさん mailto:sage [2013/01/23(水) 10:42:04.53 ID:???]
- cake 2.2.5です。 cakephp cookbook
book.cakephp.org/2.0/_downloads/en/CakePHPCookbook.pdf の 8ページ目、 public function view($id=null) { と書くべきところを、 public function view($id) { と書いてしまいましたが、動作するように思われます。 「=null」にはどのような意味があるのでしょうか?
- 170 名前:nobodyさん mailto:sage [2013/01/23(水) 11:07:55.88 ID:???]
- ただのデフォルト引数じゃないの?
- 171 名前:nobodyさん mailto:sage [2013/01/23(水) 13:24:10.39 ID:???]
- さすがにPHPのマニュアルぐらいは読もうぜ
- 172 名前:nobodyさん mailto:sage [2013/01/23(水) 13:41:16.62 ID:???]
- 知っていればphpのドキュメントに書いてることが分かるけどすでに読む必要が無く、
知らなければ分かりにくいし、検索しにくい文法じゃないか。 php.net/manual/ja/functions.arguments.php#functions.arguments.default
- 173 名前:nobodyさん mailto:sage [2013/01/23(水) 14:11:39.31 ID:???]
- >>172
それはセンスが無いかと 関数の引数の所に=が付いてるのは何でかな?と思ったら「関数」について調べる それだけのことだよ
- 174 名前:nobodyさん mailto:sage [2013/01/23(水) 14:14:57.82 ID:???]
- >すでに読む必要が無く、
呆れるほど基本的なことがわかってない時点で読む必要ありありなんですが
- 175 名前:nobodyさん mailto:sage [2013/01/23(水) 17:28:27.81 ID:???]
- >>173
センスといえばそうだけど、思い当たらなかった人に、 ドキュメントのURLを貼ってやってもいいと思うんだ。 まぁphpのドキュメントはかなり充実してるから、大抵の事はあたりをつけて読めば書いてあるし、 読めばいいとは思うけど、それも知っていてこそ、だと思うんだよね。
- 176 名前:nobodyさん mailto:sage [2013/01/23(水) 17:46:32.01 ID:???]
- ググれカスで済む所をキーワードまで付いてるのに
せっかくゆとり教育終わったのにゆとりの再生産したいのかw
- 177 名前:nobodyさん mailto:sage [2013/01/23(水) 18:05:08.20 ID:???]
- 話がらっと変えるけど、お前ら超小規模システムの場合でも
Cakeとかフレームワーク使ったりする? 例えば、テーブル1つのメールフォームとかアクセスカウンターとか。 ちょっとしたPHP+MySQLを使うとき、みんなどうしているのかな?と思って。
- 178 名前:nobodyさん mailto:sage [2013/01/23(水) 18:49:28.47 ID:???]
- >テーブル1つのメールフォームとかアクセスカウンターとか。
さすがにそれでは使わねえなw
- 179 名前:nobodyさん mailto:sage [2013/01/23(水) 19:40:37.06 ID:???]
- アクセスカウンターには流石に使わないと思う、
というかアクセスカウンターを作る状況がもう想像つかないけど。 テーブルあるならメールフォームには使うかな。 バリデーター使いたいし、入力内容をDBに入れるなら、 見たりする管理画面的なものも入ってきそうだし。 長く稼動すれば、検索したいだの、対応状況を付けたいだの、 要望が出てきそうだし、最初は極小規模でも、 なんだかんだ増えるんじゃないかと思った。
- 180 名前:nobodyさん mailto:sage [2013/01/23(水) 20:06:13.82 ID:???]
- >>179
特定ページのアクセス数を管理画面で見たいって要望は割りとあるよ。 極小規模でもCake使うのか。 確かに後々必要になるケースは多々あるけど、 サーバにファイルを転送する時、 「こんなにファイルアップする必要あるかな」って感じるんだよねw
- 181 名前:nobodyさん mailto:sage [2013/01/23(水) 20:42:29.21 ID:???]
- >>180
> 特定ページのアクセス数を管理画面で見たいって要望は割りとあるよ。 そなのか。言われたことないなぁ。 アクセス解析でかってにやってるみたいだし。 > サーバにファイルを転送する時、 > 「こんなにファイルアップする必要あるかな」って感じるんだよねw その感覚はまぁわかるw
- 182 名前:nobodyさん mailto:sage [2013/01/23(水) 22:04:32.97 ID:???]
- 質問させてください。2.2。5安定版を使用しています。
よくあるDBに問い合わせを行ってログインを行う処理の実装なのですが、 authコンポーネントを使用せずにAES暗合を使用したログインにしようと思っています。 入力値を $id = Security::rijndael($id, Configure::read('Security.key'), 'encrypt') で、バイナリ型に変換した後に以下のように問い合わせを行っています。 $conditions = array( 'conditions' => array('id' => $id, 'pass' => $pass); find('all',$conditions); この方法でDBに同じ文字列のbinaryデータがあった場合はfindする事ができるのでしょうか? DB側の型はblob型で、格納されているデータはbinaryです。 散々詰まっていて、ふとfind関数でバイナリって検索できるのだろうかと疑問を感じたので質問します。
- 183 名前:nobodyさん mailto:sage [2013/01/23(水) 23:17:54.00 ID:???]
- んなことやったこと無いからわからんが、
とりあえずCakePHPが発行してるSQLを出して、 それが動くものなのかどうかじゃないの?
- 184 名前:nobodyさん mailto:sage [2013/01/23(水) 23:37:05.72 ID:???]
- >>182
そもそもの設計思想が・・・
- 185 名前:nobodyさん mailto:sage [2013/01/24(木) 12:28:57.76 ID:???]
- CakePHP2のマニュアル読みながら作ってみてるんだけど
イベントシステム(CakeEvent)の使い方というか利点ってどんなんですか? book.cakephp.org/2.0/en/core-libraries/events.html マニュアルの例でいくと、注文処理の後、メールを送るとかを別のコントローラーに やらせるって感じ?
- 186 名前:nobodyさん mailto:sage [2013/01/24(木) 13:18:11.29 ID:???]
- それ、作ったヤツのオナニーじゃねー?
オレオレサイトならいいけど、そんなもん業務に持ち込まれた日にはブチ切れ間違いない!
- 187 名前:nobodyさん mailto:sage [2013/01/24(木) 13:25:19.15 ID:???]
- >>185
一つのメソッドにガッチガチにコーディングした方がいい場合と、 その反対にロジックの順番やら処理の是非なんかを 柔軟な可変状態にした方がいい場合とを分けないと利用価値がわからないだろうな。 用途が完全に限定されていてロジックの更新を考慮しないんならイベントシステムは無意味。 そのドキュメントにも、普通はこんなものいらないって書いてあるよ。
- 188 名前:nobodyさん mailto:sage [2013/01/24(木) 14:31:07.70 ID:???]
- >>185
どこに処理させるかってのを切り離せるっていうのが利点だから、 'Mode.Order.afterPlace' で何をどうアタッチるかは 実装に応じてそれぞれ良きに計らってくれってことじゃないか? 処理状態をイベントオブジェクトにカプセル化して 処理を回していくっていうのはとても便利な時がある。 使い方をわきまえれば実装も楽だしメンテも楽になるとても良いツール。 ただ、どんなコーラブルをどこにアタッチさせているのかを把握できないと 最悪になると思われる。
- 189 名前:nobodyさん mailto:sage [2013/01/24(木) 15:04:16.44 ID:???]
- >>185
例えばECCUBEみたいな、 ECサイトパッケージを作って配布するようなことをするなら、使えるんじゃない? 決済モジュールとか、CakeEventListenerの実装クラスで作れば入れ替えできるし。
- 190 名前:nobodyさん [2013/01/27(日) 01:02:37.34 ID:0HsM0LlW]
- phpMyAdminで新しいテーブルを追加して、当該コントローラの
public $uses = array('Foo','Bar'); となっているところに単数形頭文字大文字でテーブル名を追加したら500エラーを吐くんですが なにが原因かわかりますでしょうか? 同じ環境のxampp(テーブルを追加+コントローラにテーブル名追加)で正しく動いてます サーバー側にも同じテーブル(sqlでエクスポートしたものをsqlで追加)とコントローラはあります サーバーはさくらです ご教示お願いいたします
- 191 名前:nobodyさん mailto:sage [2013/01/27(日) 01:39:20.60 ID:???]
- >>190
500エラーの内容を調べて書いてくれ たくさん可能性がありすぎて分からん
- 192 名前:nobodyさん [2013/01/27(日) 01:48:40.75 ID:0HsM0LlW]
- >>191
ありがとうございます 500 Internal Server Error が出力されるだけで、cakephpのエラーでみるような「何行目になにエラー」のような表記は出ませんでした
- 193 名前:nobodyさん mailto:sage [2013/01/27(日) 02:18:55.23 ID:???]
- サーバーの Debug の設定は1以上にしてるの?
- 194 名前:nobodyさん mailto:sage [2013/01/27(日) 02:36:49.72 ID:???]
- cacheフォルダ内のファイル消したら解決する予感
- 195 名前:nobodyさん mailto:sage [2013/01/27(日) 02:40:52.81 ID:???]
- あぁ、それだ
- 196 名前:nobodyさん [2013/01/27(日) 20:24:52.00 ID:0HsM0LlW]
- >>193
ありがとうございます debugを2にしたら動きました
- 197 名前:nobodyさん mailto:sage [2013/01/27(日) 20:34:48.06 ID:???]
- debugを変更させる意味わかってるかな
キャッシュが消えたから動いたんだと思うんだけどねぇ まさか2のまま運用しないよね まぁいいか
- 198 名前:nobodyさん mailto:sage [2013/01/27(日) 20:39:28.54 ID:???]
- 昔謎のエラーでどうしても動かなくて、セッションのセキュリティを落としたら動いたってことがあったな
あれ、そのまま運用してた気がする…まあいいか
- 199 名前:nobodyさん [2013/01/27(日) 21:26:58.92 ID:0HsM0LlW]
- >>197
0に戻してあります お気遣いありがとうございます debugレベルって警告の有無だけではなくて、デバッグもしてくれるってことなんでしょうか?
- 200 名前:nobodyさん [2013/01/27(日) 21:37:02.82 ID:0HsM0LlW]
- あ、デバッグしてくれるんではなくて、テーブルのキャッシュをクリアしてくれたってことですね
すみませんありがとうございました
- 201 名前:nobodyさん mailto:sage [2013/01/28(月) 11:19:46.93 ID:???]
- 500エラーのときはCakeのログじゃなくてApacheのログ見なさいよ
- 202 名前:nobodyさん mailto:sage [2013/01/28(月) 14:06:38.93 ID:???]
- POSTで渡ってきた値がnullになります。
$insertData = $this->data['insert']; foreach($insertData as $key) { echo var_dump($key); } とした場合 array ''id'' => string '1' (length=1) ''name'' => string '名前' (length=6) ''flg'' => string '0' (length=1) と出ます。 そこで foreach($insertData as $key) { echo var_dump($key['name']); } とすると、 Undefined index: name null で、中身が入ってないと言われるのですが…。 cakeの仕様で特別な処理入れないといけないとかありますか?
- 203 名前:nobodyさん mailto:sage [2013/01/28(月) 14:10:34.82 ID:???]
- >>202
何やってんだよそのコード
- 204 名前:nobodyさん mailto:sage [2013/01/28(月) 14:11:53.53 ID:???]
- ってか、今どき1系かよ
- 205 名前:nobodyさん mailto:sage [2013/01/28(月) 14:30:18.84 ID:???]
- >>203
本来はここにsave関数入れてupdate文投げたいんですが…。 postで渡ってきた値が取れないので今は外してあります。
- 206 名前:nobodyさん mailto:sage [2013/01/28(月) 14:36:24.17 ID:???]
- 最近は低レベルなうんこみたいなのしか質問しないからなぁ
cake以前の問題
- 207 名前:nobodyさん mailto:sage [2013/01/28(月) 14:45:17.93 ID:???]
- CakePHP以前にphpとしておかしい。
var_dump()は、それだけで出力する関数だよ。 連想配列をforeach($namedArray as $value)とした場合、$valueには値しか入らない。キーは無視される。 jp.php.net/manual/ja/language.control-structures.php とりあえずCakePHPの前に、言語の基本の制御構造は一通り知っておいたほうが良い。 あ、gotoは覚えなくて良い。
- 208 名前:nobodyさん mailto:sage [2013/01/28(月) 14:46:38.64 ID:???]
- 1.3系はまだ使ってるぞ
それで作ったシステムがあんだよ、今から始めるなら2系にするけど
- 209 名前:nobodyさん mailto:sage [2013/01/28(月) 14:50:32.59 ID:???]
- >>202
解決したので〆ます。 >>207 ありがとうございます。echoいらないですね。知りませんでした。 原因はinput側のnameにクォート使ってたせいでした。
- 210 名前:nobodyさん mailto:sage [2013/01/28(月) 14:51:02.60 ID:???]
- >>208
いやそういう意味で言ったんじゃなくて、 質問からして初心者丸出しだったんでつい 自分もmigrationという罰ゲームから日々逃れているので 1.3系からは縁は切れそうにないです
- 211 名前:nobodyさん [2013/01/28(月) 22:12:15.69 ID:swjDhI9O]
- ***.ctp の中でガリガリやるのはよくないですか?
やっぱり Controller の中でやるべきなのかな。
- 212 名前:nobodyさん mailto:sage [2013/01/28(月) 23:09:06.99 ID:???]
- でっけぇ釣り針だなおい
- 213 名前:nobodyさん mailto:sage [2013/01/28(月) 23:13:46.62 ID:???]
- ( )*( )
きったねー穴だな
- 214 名前:nobodyさん mailto:sage [2013/01/29(火) 12:10:09.53 ID:???]
- ttp://ameblo.jp/rb26/entry-11458991618.html
どのフレームワークも、フレームワーク自体を良くしていく修正って 入るもんじゃないのかなって思うんだけど、どうなんだろう。 確かに、CakePHPのバージョンをマイナーでも上げてみたら、 困ったことは経験あるけど。 他のフレームワークってそういうことないの? あ、Smartyのとこはスルーで。
- 215 名前:nobodyさん mailto:sage [2013/01/29(火) 12:35:50.82 ID:???]
- > こんなフレームワーク、危なっかしくて使えません。
> 困っている人いっぱいいそうですが、人気があるのが正直不思議です。 え、人気なんてねーだろ てのが個人的な印象なんだがどうなんだろ
- 216 名前:nobodyさん mailto:sage [2013/01/29(火) 14:21:01.52 ID:???]
- 人気というか多くのPHPerがつかってる印象はある
- 217 名前:nobodyさん mailto:sage [2013/01/29(火) 14:25:59.76 ID:???]
- CakePHPで、検索結果のページタイトルを何ページ目とかいう表示ってどうやったら出来るか参考になる情報ってないですかね。
- 218 名前:nobodyさん mailto:sage [2013/01/29(火) 14:28:58.07 ID:???]
- Cakeは一時期は人気あった気がする
サイトも沢山あったし本も出てた、俺もその頃に使い始めたクチ その後中身ボロボロなことに皆気が付いて、去っていったのかな 未だにぐぐっても出るのはその頃の解説ばかりだね ところで今更Smartyは使いたくないな
- 219 名前:nobodyさん mailto:sage [2013/01/29(火) 14:31:45.92 ID:???]
- 小システムではSmarty使ってるよ。
PHP入のHTMLを変更させるよりも、割と需要あるし。
- 220 名前:nobodyさん mailto:sage [2013/01/29(火) 14:36:42.45 ID:???]
- >>217
バージョンしらんけど $this->passedArgsからpageとってきて $title_for_layoutだか$pageTitleだかに追加しろよゴミクズ野郎
- 221 名前:nobodyさん mailto:sage [2013/01/29(火) 14:44:54.98 ID:???]
- >>214
変更点についてのミグラチオンガイドもきちんとリリースしてくれるから、 あまり気にならない。
- 222 名前:nobodyさん mailto:sage [2013/01/29(火) 14:48:04.57 ID:???]
- >>217
それって何ページ目がリクエストされているかどうかわかれば 済む話じゃないの?
- 223 名前:nobodyさん mailto:sage [2013/01/29(火) 22:58:58.76 ID:???]
- >>215
>>216 多くのPHPerが使ってるって、人気あるってことじゃないの? >>218 確かに、最近は盛り上がってない感じはするよね。 でも、初心者が目立つような気もするけど。 >>221 ああミグラチオンガイドね、読んでる、読んでるよ、うん。
- 224 名前:nobodyさん mailto:sage [2013/01/29(火) 23:16:10.75 ID:???]
- 全レスとかだいぶ気持ち悪いんだけど
- 225 名前:nobodyさん mailto:sage [2013/01/30(水) 01:35:49.79 ID:???]
- そうかそりゃぁ大変だな!
- 226 名前:nobodyさん mailto:sage [2013/01/30(水) 02:06:54.48 ID:???]
- 冷静を装っても顔真っ赤
- 227 名前:nobodyさん mailto:sage [2013/01/30(水) 09:27:59.12 ID:???]
- チェンジログとか、ミグラチオンガイドはきちんと目を通そうね。
さらりと重要なことが書いてある。 2.3正式版リリース直前で、core.phpのSecurity.levelが無くなった。
- 228 名前:nobodyさん mailto:sage [2013/01/30(水) 11:26:29.76 ID:???]
- つまり、どういうことだってばよ?
- 229 名前:nobodyさん mailto:sage [2013/01/30(水) 11:56:15.29 ID:???]
- あ、そうですね。
未設定状態だと low が適用されちゃうね。
- 230 名前:nobodyさん mailto:sage [2013/01/30(水) 12:20:15.33 ID:???]
- つまり、どういうことだってばよ?
- 231 名前:nobodyさん mailto:sage [2013/01/30(水) 14:10:32.14 ID:???]
- security.levelってもはやSessionタイムアウト時間の取得にしか使われてないのか。
なら無くなってもどうでもいい。
- 232 名前:nobodyさん mailto:sage [2013/01/30(水) 14:38:58.77 ID:???]
- ここまで着たらSecurity.levelなんて無くして数値で設定するようにしてほしいな。
変に数値を隠蔽すると逆に分かりにくい。
- 233 名前:nobodyさん mailto:sage [2013/01/30(水) 14:44:27.19 ID:???]
- 言えてますな。
Cakeみたいに長い期間過去からいろいろ引きずってると、 初心者にしてみればなんでこんな仕様になってるのか 理解できないものだらけになってくる。 ってか、PHP自体がそんな感じだが
- 234 名前:nobodyさん mailto:sage [2013/01/31(木) 09:50:24.92 ID:???]
- 2.3のpaginateコンポーネントの仕様変更が痛い。
存在しないページナンバーを指定すると例外になる。
- 235 名前:nobodyさん mailto:sage [2013/01/31(木) 09:52:46.37 ID:???]
- 今更ポッと出てきたフレームワークでもないのに
なんでそんなにガタガタなの
- 236 名前:nobodyさん mailto:sage [2013/01/31(木) 10:25:45.07 ID:???]
- うーん、誰か知恵を授けてください。
>>234で書いたとおり、2.3にするとpaginateコンポーネントで、存在しないページナンバーを 指定するとNotFoundExceptionの例外が発生します。 Searchプラグインとpaaginateを組み合わせると、例えば5ページ目までページングした後に 検索を行い、結果が5ページに満たなかった場合にはこの仕様ではエラーとなります。 検索ボタンを押したときにpost先のURLからpageパラメータを消すのが根本的な 解決だとは思うのですが、既に作ったシステムということもあり変更個所が多すぎるのです。 ・paginateコンポーネントの例外処理を削除 ・Searchプラグインに手を入れる できればこれ以外で解決したいのですが、何か策はありますか? とりあえずpaginateコンポーネントに直接手を入れることで考えてますが・・・。
- 237 名前:nobodyさん mailto:sage [2013/01/31(木) 11:24:17.48 ID:???]
- というかそれ、再検索してるってことだよな?
2.3.0の話以前に、再検索してるのに5ページを示すパラメーターがついたままっておかしくね? で、まぁpagenateコンポーネント見てないけど、 例外ならキャッチして復帰させるコード書けばいいんでないの?
- 238 名前:nobodyさん mailto:sage [2013/01/31(木) 11:31:42.14 ID:???]
- そのデフォの挙動がおかしいよな
もっといい手法あるかもだけど、とりあえず検索のFormに $this->Form->hidden('page', array('value' => 1)); を持たせるだけで再建策の際はトップページに固定ってできる。 ただ、2ページ目のときにソートを変更した場合もトップに来てほしいのにページ保持してんだよな paginateにパラメータ渡してなんとかできそうかなと思ってるけど後回しになってるわ。あと質問の件とは関係ないなすまん
- 239 名前:nobodyさん mailto:sage [2013/01/31(木) 14:18:38.44 ID:???]
- >>236
直接コアのライブラリに手を入れるのはやめといたほうがいいんじゃない? 俺なら少なくともPaginatorComponentを継承した オレオレコンポーネントを作って、 コントローラからそれをPaginatorとして利用するとかだけど。 コントローラの書き換えが出てくるけどな。それはまぁしゃあない。 オレオレコンポーネントに該当のメソッドの部分だけラッパー被せればいいからメンテもしやすい。
- 240 名前:nobodyさん mailto:sage [2013/01/31(木) 20:33:43.81 ID:???]
- そういえばコアのコンポーネントを継承して、別名となったそのコンポーネントを、
元のコンポーネントとして使う方法があったような・・・ 昔の事すぎてよく覚えてないけど。
- 241 名前:nobodyさん mailto:sage [2013/01/31(木) 21:34:40.55 ID:???]
- >>237-240
皆さまありがとうございました。 取り急ぎの対処で、CakePHP側で無く、Search plugin側を直接修正 (PrgComponentでリダイレクトされる前にpageパラメータ削除)を行いました。 ただ根本的な対策は>>239のようにすべきかと思います。 なおCookBookにもあるのですが public $components = array( 'Auth' => array( 'className' => 'MyAuth' ) ); という感じで「className」を使えば継承したオレオレComponetを元のComponentと 置き換える形で使えるような気がするので、時間があれば試したいと思います。
- 242 名前:nobodyさん [2013/01/31(木) 22:14:42.24 ID:RjbL5w0X]
- レスポンシヴ・ウェブデザインにはCAKEが最適ですか?
- 243 名前:nobodyさん mailto:sage [2013/01/31(木) 23:35:35.19 ID:???]
- >>242
あまりというか全然関係ないです
- 244 名前:nobodyさん mailto:sage [2013/01/31(木) 23:41:35.62 ID:???]
- 時間あったから1.3系の頃に作ったSearh plugin使ってるむかーしのコード見たけど、
pageパラメーターの削除とかしてるようには見えなかったけどなぁ。 Searh pluginて再検索でpageパラメーター引き継がれる仕様だったっけ?
- 245 名前:nobodyさん mailto:sage [2013/02/01(金) 02:48:40.88 ID:???]
- まず、Searh pluginが知らん
|

|