【PHP】フレームワーク CakePHP 16ホール目【v2.4】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2013/09/09(月) 01:56:10.19ID:m9OPw/HTCakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ
質問するときはCakePHPのバージョンを書きましょう
※他フレームワークとの比較等はスレ違いです
■本家
http://www.cakephp.org/
APIドキュメント
http://api.cakephp.org/
github - cakephp
http://github.com/cakephp
the Bakery
http://bakery.cakephp.org/
Issue
http://cakephp.lighthouseapp.com/dashboard
CheatSheet[1.2] (PDF)
http://cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf
■日本語公式
http://cakephp.jp/
フォーラム
http://cakephp.jp/modules/newbb/
cookbook(マニュアル)
[2.x] http://book.cakephp.org/2.0/ja/index.html
[1.3] http://book.cakephp.org/ja
http://kohada.2ch.net/test/read.cgi/php/1354593996/l50
0075nobodyさん
2013/09/17(火) 13:45:38.86ID:???viewもわりと理解した
modelがよくわからない
他人が書いたソースを眺めるだけじゃなく、ちゃんと書籍なりで勉強すべきかな
0076nobodyさん
2013/09/17(火) 13:54:53.58ID:???普通なら/xxxx に飛ぶのに/xxxx/ に行ってしまって、その後のボタン処理が滅茶苦茶。
結局判らずリンク先をダイレクトに指定して回避したけど気持ち悪い。
Twitter Bootstrapを最近入れたけどCakePHPのフォーム処理と使い勝手が悪い感じがする。
0077nobodyさん
2013/09/17(火) 13:59:43.68ID:???実際に開発始めると、例みたいに簡単な1コントローラ、1モデル、1ビューの構成に片付かない
1コントローラ複数モデルになると一気にコントローラが太るのを何とかしたい
0078nobodyさん
2013/09/17(火) 14:21:37.80ID:???なんか苦戦してるみたいだけど、
具体的に詳しく書けば何らかの助言は貰えると思うよ。
よくは分からないけど、あなたは今良くない方向へ向かっている気がする。
同じ努力をするなら少し方向を考え直した方がいいのでは?
0079nobodyさん
2013/09/17(火) 16:36:07.83ID:???0080nobodyさん
2013/09/17(火) 16:37:37.77ID:???フレームワークが暗黙的にいろんなデータを補完しているから、
初心者だとよくはまる失敗の典型ではないかと思います。
詳しく見れば必ず解決できるはずなんだけど、最初は調べ方すらわからないのが普通。
問題になってる FormHelper::create() のパラメータを書いて見れば?
0081nobodyさん
2013/09/17(火) 16:40:07.14ID:???アングロサクソンに合わせるしか無いのであきらめろ。
世界の文化を上書きできるならもう一度戦争してみればいい。
0082nobodyさん
2013/09/17(火) 16:52:47.46ID:???0083nobodyさん
2013/09/17(火) 17:35:09.83ID:???0084nobodyさん
2013/09/17(火) 17:37:54.93ID:???0086nobodyさん
2013/09/17(火) 18:00:02.50ID:???0087nobodyさん
2013/09/18(水) 15:18:46.52ID:???FoodsテーブルにcolumnとしてDish_id, Calorie, (質問には関係ないけどFoodnameも)が有って、
Dishesテーブルの内容を、それぞれのrowに属するFoodのCalorieの合計の大きい小さい順に
paginatorの機能を使って並び変えられるようにしたい時、どうするのが一番良いですかね?
DishesテーブルにCalorieの合計値を属性として持たせる、と言うのは思いついたんですがどうでしょうか?
CakePHPは2.2を使ってます。
0089nobodyさん
2013/09/18(水) 16:05:46.78ID:???そうですか、ありがとうございます。
ただそうなると、もしFoodsテーブルのcalorie情報とDishesテーブルのcalorie合計値情報が
絶対矛盾しない様にしたいと思ったらトランザクションとか使わないといけないですよね?
もしくはcronとかを回してFoodsテーブルとDishesテーブルで矛盾が出たら検知するプログラムを走らせるとか?
0090nobodyさん
2013/09/18(水) 21:07:53.48ID:???0092nobodyさん
2013/09/19(木) 01:47:34.39ID:???0093nobodyさん
2013/09/19(木) 05:11:21.97ID:???0095nobodyさん
2013/09/19(木) 12:02:37.73ID:???0096nobodyさん
2013/09/19(木) 22:23:16.57ID:???0097nobodyさん
2013/09/19(木) 23:00:16.87ID:???他FWに比べて、いいから使ってるわきゃない
0098nobodyさん
2013/09/20(金) 00:26:53.84ID:???それが一番じゃないかな?
0099nobodyさん
2013/09/20(金) 00:31:48.40ID:???今は後悔している
0100nobodyさん
2013/09/20(金) 04:37:03.54ID:???96だが、日本語の資料が多いだけか。
他FWに比べて他のメリットってなにもないよね。
参考になったよありがとう。
0101nobodyさん
2013/09/20(金) 05:51:49.74ID:???0103nobodyさん
2013/09/20(金) 09:51:34.51ID:???ファイルの存在しないパスのアセットを取得しようとしてるかも。
一度CSSとかfaviconとかの記述をチェックして下さい。
0104nobodyさん
2013/09/20(金) 16:20:28.57ID:???してないならセッション切れの原因になると思う
俺も一部のコントローラーだけ指定してたらそうなった
0105nobodyさん
2013/09/20(金) 17:24:32.38ID:???cakeはcontrollerの部分はすごく便利
だが、modelはダメダメ
viewもわりと使いやすい
0106nobodyさん
2013/09/20(金) 17:31:35.17ID:???仕方なく始めたのがCakePHP1.3だった。
で、特に不満もなく今に至るという感じで、
なんとか2系にはシフトできたけど
ほかのフレームワークを試せるほど余裕が無い。
Cakeをある程度使えるようになるまで時間がかかったから、
それと同じぐらいの手間をかけてまで
他にまで手を広げようという意欲がわかないだけで、
簡単に他のを試せるならCakeを使っていないかもしれない。
そういう人は多いのじゃないかと思うがどうだろう。
0107nobodyさん
2013/09/20(金) 17:58:36.98ID:???その頃はまだFuelPHP等も流行ってなく、PHPのMVCフレームワークといえばどの本も大体Cakeを筆頭に挙げてた
で俺も勝ち馬に乗るつもりで手を出してみたんだけど、使ってみたらイマイチで他に新しいのがどんどん出てきた
けどキッツキツの仕事のスケジュールの中ではコードの再利用や学習コストを考えると他に以降できない
気に入らない点のいくつかは2で改善したし一応使い物になってるのでそのままって感じ
0108nobodyさん
2013/09/20(金) 18:10:37.86ID:???情報量が少ないとわざわざ覚えようと思わないよね
0109nobodyさん
2013/09/20(金) 18:48:44.64ID:???英語でもいいから公式ドキュメントをもっと充実して欲しいね、使い込む人用に。
ネットの記事や本も2より1の時の方が多かったよね、3になったら更に減ったりするのかな。
0110nobodyさん
2013/09/20(金) 18:51:58.92ID:???0111nobodyさん
2013/09/20(金) 20:07:24.91ID:???体系的・科学的じゃない。
0112nobodyさん
2013/09/20(金) 20:09:43.10ID:???Struts(java)⇒Symfony1系⇒ZendFW1系⇒Symfony2系⇒Cake2系と変遷してきた。
ドキュメントは公式のページで充分だしわからないとこはソースみりゃいいよね。
どんなFWでも同じ。
初めて触ってみたけどcakeの良いとこが多少学習コストが低いかもくらいしか見つからなかったんだ。
それで聞いてみた。
0113nobodyさん
2013/09/20(金) 20:27:59.86ID:???初心者騙しにしかなってない。
わからなかったらソース読めとかアホかそんな効率悪い事できるのは暇人だけ。皆働いてんだよ。
0114nobodyさん
2013/09/21(土) 00:07:12.40ID:???0115nobodyさん
2013/09/21(土) 00:39:39.41ID:???単数形にすることも出来るけど、フォーム処理で躓く時あるし
0116nobodyさん
2013/09/21(土) 00:53:11.30ID:???数人でプロジェクト組むと、うっかり守らない奴が出るんだよなあ
0118nobodyさん
2013/09/21(土) 01:21:56.95ID:???その場合は単数形が have で、複数形が haves だよ。
0119nobodyさん
2013/09/21(土) 01:27:56.10ID:???0120あ
2013/09/21(土) 01:41:26.10ID:???会員制のアプリで、アプリからブログの更新ができるようにしたいです。
ログイン後のトークン発行など、、ここらへんがよくわかりません。。
どんな流れになるのでしょうか?
よろしくお願いします。
0121nobodyさん
2013/09/21(土) 03:32:29.71ID:???http://book.cakephp.org/2.0/ja/tutorials-and-examples/blog-auth-example/auth.html
0122nobodyさん
2013/09/21(土) 09:22:19.71ID:IxVA/8jO書き直す場合にどのようにすればよいでしょうか
select
カラムA,(select カラムB from テーブル where カラムA=t1.カラムA order by rand() limit 1)
from
(select カラムA from テーブル group by カラムA) t1;
0123nobodyさん
2013/09/21(土) 12:05:47.80ID:h7jpowpU直書き 一択
0124nobodyさん
2013/09/21(土) 12:12:42.26ID:???調べることが暇人ってなんだ?
やりたいことが載ってないって応用力ないんだなww
答えそのものが載ってないとできない奴っているよねw
cakeが初心者用のフレームワークって納得したよ。
0125nobodyさん
2013/09/21(土) 12:29:05.54ID:???ソース検索して開いて見るより、ドキュメントがあったほうが見やすいだろ?
0126nobodyさん
2013/09/21(土) 12:38:54.14ID:???存在するか調べる機能ってないですかね?
小一時間ググったのですが、見つけられませんでした・・・
0127nobodyさん
2013/09/21(土) 12:48:08.89ID:h7jpowpU特別な方法はないと思う
Shellプラグインの作成で結構地味に調べたのを記憶してる
0128nobodyさん
2013/09/21(土) 12:54:35.00ID:???0129nobodyさん
2013/09/21(土) 12:55:01.64ID:???公式
http://book.cakephp.org/2.0/en/models/data-validation.html
ソース
lib/Cake/Utility/Validation.php
公式に全部載ってるかどうか知らんが、1つでも載ってたらソース見ないの?
どんなチェックしてるか知らないのに実装するの?
> 126
http://phpspot.net/php/pg%E3%82%AF%E3%83%A9%E3%82%B9%E3%81%8C%E5%AD%98%E5%9C%A8%E3%81%99%E3%82%8B%E3%81%8B%E3%83%81%E3%82%A7%E3%83%83%E3%82%AF.html
0130nobodyさん
2013/09/21(土) 14:04:59.28ID:???cakeの機能としてはないんですね。
ビューの一部をDBに保存してるのであればと思いましたが、
ないということなので定数からパスを作成して調べます
0131nobodyさん
2013/09/21(土) 16:43:48.92ID:McaoFmaC具体的にはコンボボックスやラジオボタンで選択されたデータをコントローラーで知りたいのですが、
$this->data[テーブル名][カラム名] データベースのデータじゃなくてコントローラーで設定した値なので使えない。
$this->param['form][???] paramにPOSTデータが全部入るようなのですが、二番目の引数に何を指定すれば求めるものが取得できるのかわかりません。
何を入れてもnullが返ってきます。根本的に考え違いしていますか?
0132nobodyさん
2013/09/21(土) 16:56:23.08ID:IxVA/8jO間違ってたらごめん。
どんなデータがpostされてるかはchromeなら要素検証から見れるから
それを参考に書いてみるといいと思う。
cakephp2しか触ったことないけど、その場合は下の感じで受け取るね
$this->request->data['model']['id']みたいな感じ
0133nobodyさん
2013/09/21(土) 17:01:45.99ID:???で確認してみるとよさそう
0134nobodyさん
2013/09/22(日) 03:28:58.52ID:???0135nobodyさん
2013/09/22(日) 03:45:13.84ID:???指定していると、ログイン時になにも入力しなくても
ログインできてしまう問題に遭遇した。
バーチャルフィールドの指定を外すとエラーチェックしてくれるから
バーチャルフィールドが問題だと思うけど、
これを突き止めるのに4時間かかったぜ・・・
似た問題に遭遇してる人は参考にしてください。
0136nobodyさん
2013/09/22(日) 03:48:28.58ID:???あざっす、そこに載っていたのか
そのページ前からあった?以前英語のページ含め結構探したんだが…
ソースは基本読まないで使うなあ、バグ解析などで必要にならないと読まない
他人のコード読みながら作る時間があったら自分で作るからなあ
0137nobodyさん
2013/09/22(日) 03:49:53.63ID:???再現してみたいので出来ればもうちょい詳しくお願いします。
バーチャルフィールドの指定ってのは
User::$virsutalFields = array(...);
ってことでいいのかな?
0138nobodyさん
2013/09/22(日) 04:17:47.94ID:ILax0A3i>他人のコード読みながら作る時間があったら自分で作るからなあ
フレームワーク使う意味ないんじゃ…
0139nobodyさん
2013/09/22(日) 04:30:37.36ID:???0140nobodyさん
2013/09/22(日) 12:58:56.82ID:???むしろそういう奴は使わない方がいいと思う
0141nobodyさん
2013/09/22(日) 13:56:20.61ID:???他に何のメリットがあるんだよ
0143nobodyさん
2013/09/22(日) 15:00:26.29ID:???自分が好きなように作れるんだし
0144nobodyさん
2013/09/22(日) 16:08:37.23ID:???どんな低機能のフレームワークだよ…
0145nobodyさん
2013/09/22(日) 19:24:19.17ID:???wwwwくそわろた
0146nobodyさん
2013/09/22(日) 21:32:19.12ID:???原因不明過ぎて怖い
0147nobodyさん
2013/09/22(日) 23:04:15.03ID:???0148nobodyさん
2013/09/22(日) 23:12:27.52ID:1/Rn/nVo0149nobodyさん
2013/09/22(日) 23:59:51.35ID:???有名な会員サイトで使えてるんだから、何とかなるでしょ
0150nobodyさん
2013/09/23(月) 00:16:18.34ID:???0151nobodyさん
2013/09/23(月) 05:48:35.98ID:???> セッション切れ問題がデータベースを空にしたら治った
> 原因不明過ぎて怖い
あ、それ簡単だよ。セッションが壊れてるの
MySQLはデフォルトの設定で文字数が定義より多くて
溢れても、途中で切れるだけで処理が正常終了しちゃうんだよね。
その時、壊れたセッションが出来上がる。
0153nobodyさん
2013/09/23(月) 10:43:47.86ID:???俺もそう思っていた
0154nobodyさん
2013/09/23(月) 13:37:52.78ID:???何を指してるの?
0155nobodyさん
2013/09/23(月) 13:43:42.09ID:???0156nobodyさん
2013/09/23(月) 13:49:32.13ID:???仕方なくmediumで使うと安定している
0159nobodyさん
2013/09/23(月) 17:10:55.17ID:???0160nobodyさん
2013/09/24(火) 10:22:15.50ID:PewVrVzx0161nobodyさん
2013/09/24(火) 10:48:16.58ID:???0162nobodyさん
2013/09/24(火) 11:01:06.76ID:???リフレクションを用いた初期設定値の自動マージ、
そのあたりの隠蔽された処理の把握に苦戦する。
とは言え、これはCakeに限ったことじゃないが。
0163nobodyさん
2013/09/24(火) 12:09:00.22ID:???オレもいまCake使ってて
モデルが単数形でコントローラーが複数形だけど
それって他のフレームワークも同じ?
フォームヘルパーとか$this->request->data=$this->Post->read()の値をフォームで使えるようにするらしいけど
$this->set('xxx',$this->request->data);じゃなくて
そのまま使えるけどそれも隠蔽されてるっていうの?
0164nobodyさん
2013/09/24(火) 13:18:17.37ID:???一人のキチガイが根拠も示さず必死に否定してるけど
開発速度向上はフレームワークのメリットのひとつだよ
0165nobodyさん
2013/09/24(火) 13:56:07.30ID:???未作成のモデルをCakePHPみたいに暗黙的に呼び出すというのは俺は知らない。
SynfonyにしろCodeIgniterにしろテーブルと関連付けた
アクティブレコードを明示する必要があって、
そこで単数形にするかどうかは好きにすればって感じだったと思う。
> フォームヘルパーとか$this->request->data=$this->Post->read()の値をフォームで使えるようにする
え、そうなん?初耳だわ。
0166nobodyさん
2013/09/24(火) 14:28:03.92ID:???>ほとんどの場合、このような形式を意識することはありません。
>CakePHPの FormHelper やモデルのfindメソッドは全てこの形式に従っています。
>FormHelperを使っていれば、 $this->request->data で簡単にこの形式のデータにアクセスできるようになっています。
$this->setに代入じゃなくて
$this->request->dataに代入で使える
変なの
0167nobodyさん
2013/09/24(火) 14:53:11.90ID:2aQmFqKG0168nobodyさん
2013/09/24(火) 16:31:42.77ID:???教えてください
0170nobodyさん
2013/09/24(火) 17:46:21.20ID:???0171nobodyさん
2013/09/24(火) 18:01:42.34ID:???他に何のメリットがあるの?
開発速度以外はデメリットだらけだろ
オープンソースのFWはオレオレ作る時間がない時に仕方なく使うもの
0172nobodyさん
2013/09/24(火) 18:10:35.82ID:???品質の向上とかあるだろggrks。
cakeが最良とは言わんが、今の時勢でフレームワークを使うことを考慮しないのはありえん。
0174nobodyさん
2013/09/24(火) 18:24:26.00ID:???・利用者が多いので、プラグイン作成の手間が省ける
・大規模サイトでも利用されてる安心感
・命名規則が統一してるから、名前付けで悩まなくてもいい
・不特定多数で開発する時、意思の疎通が図りやすい
・コピペで作っても不具合が起きづらい
・公式が現在も開発を続けている安心感
まだ続けてるか?
■ このスレッドは過去ログ倉庫に格納されています