【PHP】フレームワーク CakePHP 10ホール目【v1.3】
レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん
2010/11/01(月) 21:43:26ID:???CakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ
質問するときはCakePHPのバージョンを書きましょう
※sage推奨
※質問時もsageること
※他フレームワークとの比較等はスレ違いです
テンプレは>>1-5くらい
■本家
http://www.cakephp.org/
APIドキュメント
http://api.cakephp.org/
the Bakery
http://bakery.cakephp.org/
CakeQs
http://cakeqs.org/
CheatSheet (PDF)
http://cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf
github - cakephp
http://github.com/cakephp
■日本語公式
http://cakephp.jp/
フォーラム
http://cakephp.jp/modules/newbb/
cookbook(マニュアル)
http://book.cakephp.org/ja
0809nobodyさん
2011/02/03(木) 14:02:31ID:???よくわからないのは、モデルとコントローラー共通に必要な処理はどこに置くかということ。
今の所ビヘイビアとコンポーネントに同じコード書いてる。もっと良い方法ない?
0810nobodyさん
2011/02/03(木) 14:11:10ID:???0811nobodyさん
2011/02/03(木) 14:24:25ID:???仮にそう言うのがあれば普通にクラス書いてVender
0812nobodyさん
2011/02/03(木) 14:37:48ID:???最近あったのは、携帯サイトで、絵文字の変換処理とか。
DB前後で変換かますからモデルでやるんだけど、DBに入れなくて良い時はコントローラーでやる必要があったり。
全部コントローラーで処理することもできるがそれだとあちこちのコントローラーに同じコードが要るので、モデルでやりたい。
0813nobodyさん
2011/02/03(木) 14:41:13ID:???ありがとうございます。
なるほど、ビヘイビアってそういうものなのか。
振る舞いって言葉の通り、どのモデルでも使えるような、特定のモデルとは切り離された抽象的な「振る舞いを変えてくれるもの」と思ってた。
0814nobodyさん
2011/02/03(木) 14:46:21ID:???>DBに入れなくて良い時はコントローラーでやる必要があったり。
ここが良くわからないんだけど、
DBに入れる入れない関係なく、ロジックならモデルでやっちゃわない?
もしかしてモデルでやらない方がいい理由があったりする?
0815nobodyさん
2011/02/03(木) 14:48:18ID:???MVCを厳密に守るとコード最適化に反してしまう例の一つに見えるな
MVCを守るなら、コントローラーだけでやるのが正解ぽい
0816nobodyさん
2011/02/03(木) 14:52:35ID:???そのモデルを使わないコントローラーもあるんだけど、
そのためにモデルをusesに追加すべき?
違和感があるんだけど、モデルをDBと結びつけて考え杉なのかな
0817nobodyさん
2011/02/03(木) 15:01:28ID:???コンポーネントでやればいいじゃん
helperのbiforeVenderとかでもいいか
0818nobodyさん
2011/02/03(木) 15:07:08ID:???表示の際にPCなら画像に変えるとか、SBは変換かけるとかする。
あとformから入力があるサイトなら入力データの絵文字も考慮しなきゃならん。
なんかライブラリでも使ったほうが速い
0819nobodyさん
2011/02/03(木) 15:26:07ID:???絵文字を扱うモデルを使わないってどういうこっちゃ
0820nobodyさん
2011/02/03(木) 16:34:24ID:???ブログの記事内に絵文字埋め込んでるから、
findで受け取る際にキャリア毎に変換したいとかか?
いずれにせよ、コントローラで俺は書くな。
<select>のoptionsをDBから生成したい時はモデルに書いてるけど
0821nobodyさん
2011/02/03(木) 16:44:54ID:???外部ライブラリならvendorでいいけど。
0822nobodyさん
2011/02/03(木) 18:08:13ID:???きれいになったのはいいけどやたら重いな。
0823nobodyさん
2011/02/03(木) 23:26:56ID:???文脈(どこに出力するか)が決まらなきゃその内容も決まらないんじゃないのか
0824nobodyさん
2011/02/03(木) 23:39:37ID:???0825nobodyさん
2011/02/03(木) 23:46:43ID:???0827nobodyさん
2011/02/04(金) 01:25:00ID:???この囲みの文も日本語訳の方に載せといてくれればいいのにね。
一応cake使う上では基本なんだから。
0828nobodyさん
2011/02/04(金) 03:21:44ID:???CakeのActiveRecordに投げっぱなしだったから存在を忘れてた
XSSについては出力段階でエスケープって言うのはCake以外でも基本じゃね?
0829nobodyさん
2011/02/04(金) 10:18:51ID:???0830nobodyさん
2011/02/04(金) 10:42:48ID:???俺は何度もこのスレに助けられた
0831nobodyさん
2011/02/04(金) 11:06:21ID:???0832nobodyさん
2011/02/04(金) 11:35:40ID:???0833nobodyさん
2011/02/04(金) 15:12:57ID:???http://cakephp.jp/modules/newbb/viewtopic.php?topic_id=2021&forum=3
と同じ部分で詰まっているのですが、
誰も回答していない事を見ると、argSeparatorを指定したら
逆ルーティング出来ないのでしょうか?
0834nobodyさん
2011/02/04(金) 17:33:25ID:???Cakeであることがバレてしまうのですが、エラー用の特定のページを表示させるには
どうするのが一番良いでしょうか?
dispatcher.phpを書き換えるという手段を思いつきましたがもっと良い方法ないでしょうか
0835nobodyさん
2011/02/04(金) 17:37:36ID:???0836nobodyさん
2011/02/04(金) 17:43:17ID:???missing controllerとかmissing viewとか書いてない?
このページを編集するにはこういうファイルをAPPに作れって書いてない?
0838nobodyさん
2011/02/04(金) 17:51:13ID:???書いてないです
layoutsが中途半端に反映されたページの残骸みたいなものが出てきて、
ソースを見るとCakeのクレジットのコメント部分が出ていて、Cakeだとわかります
cake/libs/error.php内でvar_dumpするとmissingControllerと出てきます
>>837
それでやってみます
0840nobodyさん
2011/02/04(金) 22:39:54ID:???クエリがあるんだけど、インデックスも指定してあるし、特におかしなSQLでもない。
体感的にもそれほど長い時間待たされている感じはないんだけど、
クエリ情報が間違っているのかな?
0841nobodyさん
2011/02/04(金) 22:46:59ID:???0842nobodyさん
2011/02/04(金) 23:00:23ID:???スレチなんですね。わかりました。
0843nobodyさん
2011/02/04(金) 23:14:40ID:???自分で発行されたクエリ調べて、正しいか読んでろ
質問あるならそのクエリもってSQLの質問受け付けてるようなところ行って来いよ
嫌ならすぐ死ね
0844nobodyさん
2011/02/04(金) 23:18:30ID:???0845nobodyさん
2011/02/04(金) 23:40:18ID:???1000msとかならともかく259msなら、体感差はそこまではっきりとは出ないだろうし
0846nobodyさん
2011/02/05(土) 00:22:01ID:???phpMyAdminとかで実行しても259msもかかんないんだし。
それよりも、「Cakeのクエリ情報は正しいのか?」という
ただ1点のみの問いかけなんです。
0847nobodyさん
2011/02/05(土) 00:25:25ID:???ソース嫁
0849nobodyさん
2011/02/05(土) 05:01:31ID:???直近のSQLの結果は、キャッシュされる可能性があるね
0850akiyan
2011/02/05(土) 10:50:42ID:???いい加減なこと書いて初心者を惑わせるのはどうかと
0852nobodyさん
2011/02/05(土) 12:13:48ID:???リダイレクトされるのを防ぐにはどうしたらいいですか?
非ログイン状態だと右上にずっとログイン用のフォームが出てる
イメージです
0853nobodyさん
2011/02/05(土) 12:53:42ID:???てか根本的に理解が足らんと思うわ
マニュアルやチュート何度も読み返してこい
0854nobodyさん
2011/02/05(土) 13:01:50ID:???でいけたわ
必要なアクションのみdenyで登録ってことか
0855nobodyさん
2011/02/05(土) 13:20:32ID:???0856nobodyさん
2011/02/05(土) 13:58:50ID:???0857nobodyさん
2011/02/05(土) 14:29:17ID:???0858akiyan
2011/02/05(土) 15:24:41ID:???RDBMSが優秀だからクエリキャッシュするなんて見当違いも甚だしいレスをつけておいて責任転嫁はいかがなものかと
0859akiyan
2011/02/05(土) 15:30:22ID:???0860nobodyさん
2011/02/05(土) 15:40:40ID:???0861nobodyさん
2011/02/05(土) 16:37:26ID:???0862nobodyさん
2011/02/05(土) 16:43:50ID:???分かっている人はきちんと答えてるし。
0863nobodyさん
2011/02/06(日) 04:12:11ID:???0864nobodyさん
2011/02/06(日) 07:22:03ID:???0866nobodyさん
2011/02/06(日) 16:41:08ID:???0867nobodyさん
2011/02/06(日) 17:11:49ID:???0868akiyan
2011/02/06(日) 17:18:07ID:???0869nobodyさん
2011/02/06(日) 20:49:55ID:???0870nobodyさん
2011/02/06(日) 21:39:44ID:???APP::import('Vender','Thumbnail');
$Thumbnail = new Thumbnail();
最新版です。
なぜ読み込めないのでしょうか?
0871nobodyさん
2011/02/06(日) 21:47:28ID:???APP::import('Vender','thumbnail');
$Thumbnail = new Thumbnail();
なんだ小文字にするのか、、、、
こういう所が腐ってるところ
複数形とかウザすぎ
0872nobodyさん
2011/02/06(日) 21:51:21ID:???0873nobodyさん
2011/02/06(日) 21:58:42ID:???Vender
お前酷いな
0874akiyan
2011/02/06(日) 23:25:34ID:???webフレームワークの潮流も知らないでよくそんな偉そうな事言えますね
Railsとか勉強されてはどうですか?
自分の知識の無さを棚に上げてフレームワークのせいにするなんて幼稚園児の発想ですよ
どうせ自分の年収が低いのは日本経済の責任だとか愚痴ってるんでしょ新橋の立ち飲みやで
どうしようもない人間ですね カス クズ 人間のゴミ
0875nobodyさん
2011/02/06(日) 23:28:07ID:???できないやつは文句ばっかりなのは実感するところだけどさ。
0877nobodyさん
2011/02/06(日) 23:51:46ID:???いやホントに
改めて言うのも照れてしまうけれど花金明け土曜日0時なら俺は言える
「CakePHPこそフレームワークの完成形だと」
The Standard Languageの座を揺るぎないものとしたPHP
20世紀エンジニア達の知の結晶とも言うべきMVC
ここにRuby on Railsというスパイスが加わってCakeは生まれた
全くこれは何だっていうんだい 奇跡なんて陳腐なもんじゃない
おそらくはCOBOLが生まれた時点でPHPの誕生は決定済みであったろうし
Rubyは図らずもCakeの為に作られたと言っていいんじゃないか
RubistやDHH、それに20世紀を生きた全てのエンジニア達が費やした途方もない時間
それらはすべてCakeに繋がった Cakeのために彼らの汗が流された
逆じゃないんだ Cakeは結果じゃない
Cakeが始まりであって、Cakeの生誕のためにRailsがあり、Rubyがあった
20世紀を生き、そして21世紀に歩を進める全てのwebに関わるエンジニアのための心臓、それがCake
俺はCakeの時代に現役でいられたという事を誇りに思うだろう
死ぬ間際に息子と娘と孫と妻、そしてCakeの事を思うだろう
あぁCakeよCake お前は俺の中にあるし、Cake内部にも俺がいる
うまく言葉にできねぇな、とにかくCakeはもう21世紀エンジニアの魂だ
そして最後に
最愛の妻と友人、そしてペニーオークションに幸あれ
0878nobodyさん
2011/02/07(月) 00:19:49ID:Y103Gns6気にするなよ、Webの仕事では、
PHPを使う仕事ではPHP(CakePHP)を使うし、
Ruby使う仕事ではRuby(Rails)を使うでいいんじゃね。
書き方の細かなことはいいじゃねか、普通はCakePHPもRailsもどっちも使えるだろ。
0879nobodyさん
2011/02/07(月) 00:32:57ID:???0880nobodyさん
2011/02/07(月) 01:17:13ID:???好みの問題もあるけど、誰もが首をかしげるものもある。
Cakeは万能じゃない。
作りたい物が小規模で、Cakeを使ってて回りくどいと感じてるなら、
CodeIgnighterは良い選択肢かもしれない。
Cakeよりもっと厳格なスタイルで開発がしたいなら、
Symfonyを試してみると良いかもしれないぞ。
ZendFrameworkはシラネ
0881nobodyさん
2011/02/07(月) 10:55:24ID:???オレオレフレームワークを作ったのだった
0882nobodyさん
2011/02/07(月) 15:01:26ID:???0883nobodyさん
2011/02/07(月) 15:32:20ID:???そこの判断基準を教えてください
0884nobodyさん
2011/02/07(月) 16:13:13ID:???オーダーメードのときはCake
0885nobodyさん
2011/02/07(月) 16:24:23ID:???依頼時は「オープンソースでも結構です」とか言いつつ、
結局は、あれして・これしてってなるのが目に見えてるし。
0886nobodyさん
2011/02/07(月) 18:15:12ID:???0887nobodyさん
2011/02/07(月) 18:37:23ID:???プラグイン・モジュールで対応できないなら、Cakeかな。
0888nobodyさん
2011/02/07(月) 18:47:22ID:???CIはセッションがなんちゃらとPHP4とPHP5をサポートしているのが気に食わなくなりZend Frameworkの勉強を始めました
なんかやっぱりCakePHPってやっぱり難しいですね
0889nobodyさん
2011/02/07(月) 19:31:03ID:???0890nobodyさん
2011/02/07(月) 19:32:01ID:???URLがなにかイマイチな感じになる。
/items/
とか日本語の感覚だったら
/item/
になると思うんだけど
命名規則に従って作ってますか?
0891nobodyさん
2011/02/07(月) 19:36:03ID:???0892nobodyさん
2011/02/07(月) 19:42:35ID:???0894nobodyさん
2011/02/07(月) 22:25:53ID:???1.3.x系ですでに出来上がっているECサイトの礎になるようなものは無いでしょうか?
分類マスタやアイテムの登録ができ、お買い物カート等のコンポーネントや二重登録防止
ajax時と通常時での認証やエラー出力が合理的に分離されているソースコードが見たいです。
BakeSaleはバージョンが古いようでした。
大変お手数ですが、どなたかご教示願います☆
0895nobodyさん
2011/02/08(火) 01:35:20ID:???historiesとかchildrenとか
0896nobodyさん
2011/02/08(火) 03:15:55ID:???0897nobodyさん
2011/02/08(火) 03:27:28ID:???正直そこまでやらんでもって思うが、特殊な複数形のやつとかは、
Inflectorクラスのプロパティに色々書いてあるぞ。
https://github.com/cakephp/cakephp/blob/master/cake/libs/inflector.php#L40
0898nobodyさん
2011/02/08(火) 13:21:05ID:???personsでもいいじゃん!
とか思ってるから全然英語が上達しないんだろうか・・・
0899nobodyさん
2011/02/08(火) 13:42:54ID:???0900nobodyさん
2011/02/08(火) 13:56:14ID:???0901nobodyさん
2011/02/08(火) 15:10:54ID:???更新時に外部キーに設定したフィールドのレコードに空の値が送られてしまいます。
それ以外は正常に更新されています。
$form->hiddenで値を渡そうとしても、発行されているSQLの値は空になり、リレーションが壊れてしまいます。
どなたか回避策をご教授願います。
0904nobodyさん
2011/02/08(火) 16:52:25ID:???0905nobodyさん
2011/02/08(火) 17:38:00ID:???0907nobodyさん
2011/02/08(火) 18:52:39ID:???CakePHPで組み直してやれよ
0908nobodyさん
2011/02/08(火) 19:15:53ID:???Cakeはローカルで使えるヘルプを用意するべき。
ヘルプをオンラインでしか提供しないのは、googleの広告収入目当てなのかね。
せこいな・・・
>>906
本家のサイトが重いと「駄目なフレームワークなんだな」という印象を与える。
>>904
特定のサイトを明示的に永久キャッシュさせるのってどうやるの?
普通はキャッシュはいつの間にか消えちゃうと思うけど
レス数が900を超えています。1000を超えると表示できなくなるよ。