1 名前:nobodyさん [2008/12/19(金) 15:52:19 ID:ylogT+7c] ■本家 www.cakephp.org/ APIドキュメント api.cakephp.org/ cookbook(マニュアル) book.cakephp.org/ja the Bakery bakery.cakephp.org/ ■日本語フォーラム cakephp.jp/ ■過去スレ 【PHP】フレームワーク CakePHP 4ホール目【v1.2】 pc11.2ch.net/test/read.cgi/php/1213892680/ 【PHP】フレームワーク CakePHP 3ホール目【本命】 pc11.2ch.net/test/read.cgi/php/1205475360/ 【PHP】フレームワーク CakePHP 2ホール目 pc11.2ch.net/test/read.cgi/php/1194976228/ 【PHP】フレームワーク CakePHP pc11.2ch.net/test/read.cgi/php/1163850802/
37 名前:nobodyさん mailto:sage [2008/12/20(土) 22:48:55 ID:???] どういう答え? ソース開いて$this->header['X-'.$this->xmailer]の部分消せみたいな具体的な指示?
38 名前:nobodyさん mailto:sage [2008/12/20(土) 22:52:22 ID:???] インターネッツの向こうにも人間が居ることを忘れないほうがいいと思うよ。
39 名前:nobodyさん mailto:sage [2008/12/20(土) 22:54:57 ID:???] こいつさっきから粘着してる荒らしだろ。 スルーしろよ。 >>34 は消し方聞いてるんだからその回答で間違っちゃいない。
40 名前:nobodyさん mailto:sage [2008/12/20(土) 22:56:03 ID:???] > こいつさっきから粘着してる荒らしだろ。 > スルーしろよ。 それスルーしたことになってるのか?
41 名前:nobodyさん mailto:sage [2008/12/20(土) 22:57:35 ID:???] 釣り針がぶっと過ぎて飽きた
42 名前:nobodyさん mailto:sage [2008/12/20(土) 23:07:09 ID:???] またRubyヲタが荒らしに来たのか スルーしないけど
43 名前:nobodyさん mailto:sage [2008/12/20(土) 23:08:42 ID:???] 論理が飛躍するかわいそうな子が荒らしとか何とか言っても説得力ないよなぁ
44 名前:nobodyさん mailto:sage [2008/12/20(土) 23:16:12 ID:???] なんでもRubyのせいにするとはPHPの方はRubyをいしきしてるんでしょうか。
45 名前:nobodyさん mailto:sage [2008/12/20(土) 23:22:45 ID:???] PHPしか使えないんだから仕方ないよ。 PHPしか使えない人たちの中で仕事ができる人なんでしょ。
46 名前:nobodyさん mailto:sage [2008/12/20(土) 23:26:07 ID:???] なにをもって仕事をできるとするかの問題が残ってはいるけどな。
47 名前:nobodyさん mailto:sage [2008/12/20(土) 23:35:11 ID:???] あんまり無能をいじめるのはかわいそうじゃないか? Rubyもできない仕事もできない、そして仕事ができるという定義も解らない。
48 名前:nobodyさん mailto:sage [2008/12/21(日) 00:17:25 ID:???] >20 同意。
49 名前:nobodyさん mailto:sage [2008/12/21(日) 11:26:07 ID:???] まらRuby厨が荒らしに着てんのかw いい加減にしろよ(笑) Rubyが思ったほどシェアが増えなくて あせっているのはわかるけど、 こんなところでPHPをたたいても Rubyのシェアは増えないぞ。 これ、2年前にも言った。
50 名前:nobodyさん mailto:sage [2008/12/21(日) 12:45:08 ID:???] そういや楽天ってまつもと氏招いてRuby研究やってるのに 自社サービスはPHPとJavaだよな
51 名前:nobodyさん mailto:sage [2008/12/21(日) 15:19:52 ID:???] Ruby のせいにすると何かいいことあるの?
52 名前:nobodyさん mailto:sage [2008/12/21(日) 15:44:20 ID:???] >>51 Cakeへの文句の半分くらいをRoRが引き受けてくれる
53 名前:nobodyさん mailto:sage [2008/12/21(日) 17:04:19 ID:???] RoRで作ってもレンタル鯖で動かんしなぁ だったらJavaでいいじゃんみたいな
54 名前:nobodyさん mailto:sage [2008/12/21(日) 17:10:46 ID:???] >>53 工数どんだけ違うんだよw
55 名前:nobodyさん mailto:sage [2008/12/21(日) 17:27:24 ID:???] SAStrutsだったら工数変わらんのじゃない? 開発中はデプロイしなくていいからスクリプト言語と変わらんし scaffoldみたいなのもあるよ 殆どCakePHPと同じ
56 名前:nobodyさん mailto:sage [2008/12/22(月) 17:14:23 ID:???] Auth使うと認証必要ページにいったときに自動的にログインページに飛ぶけど 最初のページに対してPOSTデータを送っていた場合、失われるんだよね ログインページへのリダイレクトはAuthコンポーネントが勝手にやってるから セッションに入れたりって事も出来ない どうすればいいと思う?
57 名前:56 mailto:sage [2008/12/22(月) 17:27:43 ID:???] ログイン後に元のページへAuth->redirect()で戻るけどPOSTデータがなくなってるから意味無い場合がある って事ね
58 名前:nobodyさん mailto:sage [2008/12/22(月) 18:20:32 ID:???] 運用はさて置いて、 「認証が出来てない状態でPOSTが出来てることがそもそもおかしい」 というのが直感。 この場合は 「POST元のページに認証をかけて、そもそもの条件が発生しないようにする」 が解。 (当然、認証外のPOSTは受け捨て) ……これじゃダメなんだろうってことは察するけどw
59 名前:nobodyさん mailto:sage [2008/12/22(月) 18:24:37 ID:???] 何かPOSTした時点で認証って別におかしくないでしょ セッション短いとかあるタイミングで改めてログイン再確認とか
60 名前:56 mailto:sage [2008/12/22(月) 18:35:31 ID:???] >>58 とりあえずその方向で一応の解決はした。 未認証の場合、フォームじゃなく「○○をする」みたいなリンクを出して クリックするとログインフォーム、ログインすると元のページに来てフォームが表示されてる、 と言う形にした。 ただこの場合気になるのは、ビューでいちいちログイン状態を見て リンクとフォームを切り替える必要がある事。 AuthコンポーネントがPOSTデータの再現もしてくれるのなら、 単にフォームを表示するだけで済む。 POSTする前に認証させておけ、と言うのとどちらが本来正しいのかは判断しかねるけど。
61 名前:nobodyさん mailto:sage [2008/12/22(月) 20:05:14 ID:???] モデルにアソシエーション書く時って 自モデルのフィールド名は指定出来るけど相手モデルのフィールド名は指定出来ないよね。 デフォルトでidフィールドが参照される これって変更できる?
62 名前:nobodyさん mailto:sage [2008/12/22(月) 20:09:45 ID:???] auth compornent使ってみたけど、 これってログイン画面1つしか管理できないんですかね? 2種類のログイン画面を設置したいとき、なにかやり方ありますか? 投稿用と、観覧用など…
63 名前:nobodyさん mailto:sage [2008/12/22(月) 20:20:39 ID:???] userテーブルにprofile_idがあり、profileテーブルがあるとする postテーブルにuser_idがあるとする profile-user-post と言う関係 profileのフィールドでpostテーブルを絞り込み、paginatorで表示したい。 と言う場合直接SQL書く以外にどういう手段がある? 端的に言えばpaginatorでの二つ先のテーブルのバインドってこと。 コンテイナブルで出来るのかと思いきや、直接アソシエーションが張られてないとダメらしい。 つまりuserとprofileが繋がってても、postからprofileが直接繋がってないとエラーになる。 モデルにpaginate用のメソッドを書けるけど それ使っても直接SQL書く事は避けられそうにない。 割と良くあるアソシエーションパターンだと思うんだけど。
64 名前:nobodyさん mailto:sage [2008/12/22(月) 20:21:13 ID:???] >>62 loginアクションで2つのビューを切り替えればいいんじゃない?
65 名前:63 mailto:sage [2008/12/22(月) 21:56:02 ID:???] joins使って一応解決 にしてもスマートだとは思えない
66 名前:nobodyさん mailto:sage [2008/12/22(月) 22:57:09 ID:???] >>61 ??? foreignKeyではだめなの? > 自モデルのフィールド名は指定出来るけど相手モデルのフィールド名は指定出来ないよね。 > デフォルトでidフィールドが参照される これの意味するところがよくわからない。
67 名前:62 mailto:sage [2008/12/22(月) 23:08:40 ID:???] >>64 あ、画面だけっていうか、ユーザのアクセス管理も2パターンにわけたいって意味でした。 ちょっと書き方足りなくてすみません。
68 名前:62 mailto:sage [2008/12/22(月) 23:20:27 ID:???] うーん。cakeの中にもうひとつcakeを置いて、そこで2つ目のユーザ管理するしかないかな。 トホホな気もするけど…
69 名前:nobodyさん mailto:sage [2008/12/22(月) 23:41:22 ID:???] >>67 <a href="book.cakephp.org/ja/view/248/AuthComponent-%E3%81%AE%E5%A4%89%E6%95%B0 ">AuthComponent の変数 :: 認証 :: 組み込みのコンポーネント :: マニュアル :: 1.2 Collection :: The Cookbook</a> ここを読むと、userModelで別テーブルを指定してやればいいように思える。
70 名前:62 mailto:sage [2008/12/22(月) 23:56:41 ID:???] >>69 書き方まぎらわしくてすみません。 投稿用のユーザ管理と、観覧用のユーザ管理があって、それぞれ 別のページにアクセスできることを想定してました。 複数のモデルをauthで管理できればいいのですが、情報ないですね。 特殊なケースではないと思うのですが、みなさん各自でカスタマイズして るんでしょうか?
71 名前:69 mailto:sage [2008/12/23(火) 00:11:20 ID:???] > 複数のモデルをauthで管理できればいいのですが、情報ないですね。 うん、そういう意味で上のリンクを張ったんだけど。 モデルを切り替えるんではなくて、複数のモデルを一緒くたにして扱いたいってことですか?
72 名前:62 mailto:sage [2008/12/23(火) 00:26:01 ID:???] >>71 はい。複数のモデルを一緒くたにして扱いたいのです。 それぞれのモデルに登録されたユーザ毎にでアクセス制限かけたくて。 思いついた方法は、cakeの中にもうひとつcakeを入れることくらいでした。
73 名前:nobodyさん mailto:sage [2008/12/23(火) 01:20:40 ID:???] そういう権限レベルを分けるためのコンポーネントがある
74 名前:nobodyさん mailto:sage [2008/12/23(火) 01:21:10 ID:???] つーかもう一つcake入れるとかふざけたことやらずに せめて自分でコンポーネント実装しろよw
75 名前:62 mailto:sage [2008/12/23(火) 01:57:15 ID:???] や、やっぱふざけてますかこれw 肝はコンポーネントなんですね。実装といわれると とても難しそうですが、調べてみます。 みなさん、ヒントをありがとうございます。
76 名前:nobodyさん mailto:sage [2008/12/23(火) 02:23:37 ID:???] ACLでいいんじゃないの? 最初理解するのは難儀かもしれんけど。
77 名前:nobodyさん mailto:sage [2008/12/23(火) 03:31:28 ID:???] >>73 の言うように権限レベルを分けるコンポーネントはすでにあるよ 1.2で動くかどうかは知らんけど
78 名前:73 mailto:sage [2008/12/23(火) 06:42:00 ID:???] つーかACLの事ね ところで質問なんだけどモデル名とテーブル名の変換関数とかって
79 名前:nobodyさん mailto:sage [2008/12/23(火) 08:28:34 ID:???] >>56 book.cakephp.org/ja/view/395/autoRedirect やりたいことができるよ
80 名前:nobodyさん mailto:sage [2008/12/23(火) 08:30:26 ID:???] >>78 book.cakephp.org/ja/view/491/Inflector これ? とエスパー
81 名前:69 mailto:sage [2008/12/23(火) 08:50:50 ID:???] >>72 認証と権限管理がごっちゃになってない? Authコンポーネントは認証をするためのものだから、 そういう使い方をしようとすると無理が出るんだとおもう。 他の人も言っているように権限管理はACLコンポーネントを使うのがいいよ。
82 名前:nobodyさん mailto:sage [2008/12/23(火) 15:24:32 ID:???] routeがすげえ強力だというのを把握した
83 名前:nobodyさん mailto:sage [2008/12/23(火) 16:03:34 ID:???] CakePHPって、どこもかしこもarrayだらけだ。 arrayの入れ子ばかりたくさん書いていると、なんだかLISPを書いているような 気になる。 つうか、LISPの偉大さを思い知った気がする。 リストの入れ子の表現力はすげえな。
84 名前:nobodyさん [2008/12/23(火) 16:08:36 ID:BZm1ywfg] 管理用機能と一般ユーザ用機能が完全に分けられるなら システムごと分けちゃった方がベターだと思うんだ
85 名前:nobodyさん mailto:sage [2008/12/23(火) 17:32:11 ID:???] phpは配列の方が扱いやすい echo"僕の名前 $a['name']"; こういう書き方が出来るけど オブジェクトだと echo"僕の名前 $a->name"; こうするとエラーが出るから echo '僕の名前'.$a->name; とか解体作業が必要になる
86 名前:nobodyさん mailto:sage [2008/12/23(火) 17:34:50 ID:???] phpは配列を扱う関数が豊富だから オブジェクトを扱う場合も結局は配列の変換しないと phpには豊富にある配列関数を利用できないんじゃない
87 名前:nobodyさん mailto:sage [2008/12/23(火) 17:49:25 ID:???] >>85 ネタですか?w
88 名前:nobodyさん mailto:sage [2008/12/23(火) 17:50:33 ID:???] レベル低過ぎ >>85 後者でもエラーでないよ? つうか、前者であれ後者であれ、 どこまで変数かを示すように、ブレースで囲む習慣をつけたほうがいいよ。 >>86 オブジェクトを配列として扱いたいんならArrayObjectとかあるやん。 foreachでプロパティ以外を扱いたいならIterator系をimplementすればいいし。
89 名前:nobodyさん mailto:sage [2008/12/23(火) 23:11:18 ID:???] PHPユーザの中でもレベルの低い層がCakePHPへ流れてきている悪寒
90 名前:nobodyさん mailto:sage [2008/12/24(水) 03:20:53 ID:???] PHP界隈って、どうしても「レベル低い」言いたい人がいるよねw
91 名前:nobodyさん mailto:sage [2008/12/24(水) 04:16:31 ID:???] アソシエーションの解決をスマートに解決する方法ないかなー 2つ3つ先のテーブルとなるとjoins使うしかないよね? アソシエーションで読み込んだモデルのrecursive設定を見てそこからさらに見てくれればいいのに アソシエーション探索を行うモデルを指定出来るようにして
92 名前:nobodyさん mailto:sage [2008/12/24(水) 05:46:45 ID:???] >>88 ArrayObjectはPHP5.2からだよ。 phpはオブジェクトは扱いにくいって言ってるだろうが素人が なんでわかんねーかな
93 名前:nobodyさん mailto:sage [2008/12/24(水) 05:53:40 ID:???] >>88 phpはオブジェクトの方が扱いやすいと思ってんの?
94 名前:nobodyさん mailto:sage [2008/12/24(水) 05:59:57 ID:???] PHP4のサポート終わってみんな5.2になりつつあるんだから5.2からでもいいんじゃね?
95 名前:nobodyさん mailto:sage [2008/12/24(水) 06:04:17 ID:???] >>88 オブジェクトだと ArrayObject関数とか必要になるんでしょ? それって手間じゃない?
96 名前:nobodyさん mailto:sage [2008/12/24(水) 06:09:24 ID:???] >>88 >>foreachでプロパティ以外を扱いたいならIterator系をimplement どうやって?コード書いてくれよ javaじゃないんだからさ。。。
97 名前:nobodyさん mailto:sage [2008/12/24(水) 06:11:27 ID:???] >>94 なりつつあるもののを 当たり前に使えるのような言い方をするのは いかがなものかと・・・
98 名前:nobodyさん mailto:sage [2008/12/24(水) 06:19:47 ID:???] >>88 ArrayObjectみたいな不安定な関数よく使ってるよなwww uruseiyatsura.way-nifty.com/blog/2007/04/php5arrayobject_51d1.html
99 名前:nobodyさん mailto:sage [2008/12/24(水) 06:22:53 ID:???] >>88 >>オブジェクトを配列として扱いたいんならArrayObjectとかあるやん。 ArrayObjectてオブジェクトを配列として扱う関数なん? 配列をオブジェクトとして扱うんじゃなくて? php.mirror.camelnetwork.com/manual/ja/class.arrayobject.php
100 名前:nobodyさん mailto:sage [2008/12/24(水) 06:27:46 ID:???] >>88 ArrayObjectて配列をオブジェクトとして扱ってるよね? 記事をきちんと読もうよ!素人さん
101 名前:nobodyさん mailto:sage [2008/12/24(水) 11:25:53 ID:???] いまさら知ったんだけど、OpenPNEがフレームワークにsymfonyを採用したみたいね。 ちょい嫉妬w
102 名前:nobodyさん mailto:sage [2008/12/24(水) 13:12:13 ID:???] >>97 特定の環境で動かすアプリが殆どなんだから 一般配布するCGIでもなけりゃ使えるなら使えばいいともう
103 名前:nobodyさん mailto:sage [2008/12/24(水) 14:29:58 ID:???] >>102 つかえばいいやん CakePHPで使う必要がどれだけあるのかと・・・
104 名前:nobodyさん mailto:sage [2008/12/24(水) 14:34:03 ID:???] 使える、使いたい、って言ってる人に対して、 使う必要ないってかたくなに言うのもなんだかなぁって思う。
105 名前:nobodyさん mailto:sage [2008/12/24(水) 17:44:15 ID:???] あくまでアドバイスや意見で自分で判断すればいいじゃん
106 名前:nobodyさん mailto:sage [2008/12/24(水) 20:54:05 ID:???] >>105 おまえのはアドバイスじゃねーよw 自分の発言繰り返して読んでみろ
107 名前:nobodyさん mailto:sage [2008/12/24(水) 23:37:14 ID:???] >>106 あらあら、次は勝手に特定ですかw
108 名前:nobodyさん mailto:sage [2008/12/25(木) 12:13:56 ID:???] 2カラムのインデックスをmodelにプライマリキーとして設定することが可能であれば、 設定を教えて頂けませんでしょうか? 既存のmysql DB管理にcakeを使うつもりでいたら、上記設定のため idのテーブルを追加してプライマリに設定することが行えませんでした。
109 名前:nobodyさん mailto:sage [2008/12/25(木) 12:26:16 ID:???] cake使うなら、OOPの勉強は必須? なんかやたら「なんちゃらextends〜〜」とかって 出てくるんですけど??
110 名前:nobodyさん mailto:sage [2008/12/25(木) 12:31:02 ID:???] >>109 不要。 extendsが何をしているかとか、疑問に思ったら都度調べるくらいの姿勢があれば良いと思う
111 名前:nobodyさん mailto:sage [2008/12/25(木) 13:14:10 ID:???] >>108 book.cakephp.org/ja/view/24/ 「できなかった」というと?
112 名前:nobodyさん mailto:sage [2008/12/25(木) 13:30:27 ID:???] >>111 既存のプログラムが使用しているDBを、横からcakeで管理したかったので、 DBを新しく作ったり、すでに作られている2カラムのインデックスを解除したりは できません。 idカラムを作成し、auto incrementalを設定しようとすると、 すでにprimaryが存在するために処理が失敗してしまいました。 primaryに設定されている2カラムのインデックスを解除すると、 既存のプログラムが動作しなくなってしまうのです…
113 名前:nobodyさん mailto:sage [2008/12/25(木) 13:47:22 ID:???] >>112 CakePHPでは複合プライマリキーは使えない
114 名前:nobodyさん mailto:sage [2008/12/25(木) 13:57:27 ID:???] >>112 さん ここを読むといいよ! "複合キー" フォーラム - CakePHP Users in Japan ttp://cakephp.jp/modules/newbb/viewtopic.php?viewmode=flat&order=ASC&topic_id=1304&forum=6&move=prev&topic_time=1216343829
115 名前:nobodyさん mailto:sage [2008/12/25(木) 23:43:53 ID:???] >>113-114 cakeと複合キー処理について、理解が深まりました。 なんとかなりそうです。ありがとうございます。
116 名前:nobodyさん mailto:sage [2008/12/26(金) 10:52:31 ID:???] 1.2 stableあげ
117 名前:nobodyさん mailto:sage [2008/12/26(金) 11:25:09 ID:???] RC4からほとんど変わってないやんけw もっと完全にバグ取ってからにしてほしかった・・・ でもおめでと〜!
118 名前:nobodyさん mailto:sage [2008/12/26(金) 12:06:29 ID:???] 1.2すたぶるキター く・・クリスマスプレゼント?
119 名前:nobodyさん mailto:sage [2008/12/26(金) 12:24:27 ID:???] しかもケーキってとこが洒落てるw
120 名前:nobodyさん mailto:sage [2008/12/26(金) 12:32:56 ID:???] いや、クリスマスケーキか
121 名前:nobodyさん mailto:sage [2008/12/26(金) 12:33:32 ID:???] あ、リロード忘れてレス付いてるのきづかんかったわ
122 名前:nobodyさん mailto:sage [2008/12/26(金) 15:09:01 ID:???] いつもDonationの所 No Thanksでごめんね。
123 名前:nobodyさん mailto:sage [2008/12/26(金) 15:14:48 ID:???] 三項条件式どんだけ便利やねん。多様は可読性悪くする ビューで使うとかなり見通しがよくなる
124 名前:nobodyさん mailto:sage [2008/12/26(金) 15:26:28 ID:???] CakePHP におけるシンボルの命名規約 private 先頭にアンダーバーを2つ置く __test protected 先頭にアンダーバーを1つ置く _test public 先頭にアンダーバーを置かない test ナンジャコリャー
125 名前:nobodyさん mailto:sage [2008/12/26(金) 15:44:12 ID:???] >>124 Pythonでも似た仕組みが使われている。 慣れれば悪いものじゃない。
126 名前:nobodyさん mailto:sage [2008/12/26(金) 16:23:26 ID:???] cakephp,ちょっとむずかしくない?
127 名前:nobodyさん mailto:sage [2008/12/26(金) 16:33:19 ID:???] EthnaやMapleよりかなり簡単だと思ったが
128 名前:nobodyさん mailto:sage [2008/12/26(金) 17:06:20 ID:???] >>126 難しいというか独自ルールが多いとは感じた。 しかし、それを超えた先の開発効率はすばらしいと思う。
129 名前:nobodyさん mailto:sage [2008/12/26(金) 17:06:36 ID:???] ん? cakeのprotectedってどういうタイミングで使うん??
130 名前:nobodyさん mailto:sage [2008/12/26(金) 17:13:03 ID:???] ほんとに開発効率高いのかなあ symfonyも使ったけどバリデーションルールの自動生成が無いのは確実にマイナス
131 名前:nobodyさん mailto:sage [2008/12/26(金) 18:17:48 ID:???] 1.1から1.2に変えたら表示に常に10秒余計にかかるようになったけどなんで?
132 名前:nobodyさん mailto:sage [2008/12/26(金) 19:14:18 ID:???] debugモードじゃね
133 名前:nobodyさん mailto:sage [2008/12/26(金) 19:19:08 ID:???] 開発効率の向上以上に、メンテナンス効率の向上を実感することが多い 過去製作したコードを見たとき、「何でこんなことしてるんだっけ?」っていうのが激減した
134 名前:nobodyさん mailto:sage [2008/12/26(金) 19:50:29 ID:???] 1.2stableのbakeって複数プロジェクト前提みたいになったけど、どこにプロジェクト作るのがいいんだろ? cakeの一番上のディレクトリに、/appと並ぶ形で作ると管理しやすいかな。 PDTとかで管理する上でも。
135 名前:134 mailto:sage [2008/12/26(金) 22:09:57 ID:???] 結局楽するために今までどおりappの中に作る事にした
136 名前:nobodyさん mailto:sage [2008/12/26(金) 22:30:57 ID:???] 複数プロジェクトってどうやるんですかね?
137 名前:nobodyさん mailto:sage [2008/12/26(金) 22:36:04 ID:???] 複数プロジェクトとうか、コア(cakeディレクトリ)の共有だろ? マニュアルに書いてある。 book.cakephp.org/ja/view/35/