トップページ⇒php
987コメント299KB

【PHP】フレームワーク CakePHP

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2006/11/18(土) 20:53:22ID:???
おら、とうとうガマンできなくて立てちまっただ

本家
http://www.cakephp.org/

10分で作るCakePHPアプリ for Windows
http://p4life.jp/cake/

マニュアル日本語化
http://www.cakephp.jp/doc/

日本語フォーラム
http://cakephp.jp/modules/newbb/

あとこのへんとか(初心者向けTIPS)
http://www.avatarfinancial.com/pages/cake/
0104nobodyさん2007/03/09(金) 13:52:37ID:???
>>102
>RubyにRailsと同等のシェアを持つフレームワークあるの?
rubyは他に何もないマイナー言語だから一極集中してるだけ。
それくらい普通に考えればわかるだろうに、>>100はかわいそうな子だなぁ
0105nobodyさん2007/03/09(金) 14:37:43ID:GFS6POXv
>>104
PHPでは訴求力のあるフレームワークが無いんだねっていう話
Javaは乱立してても有用なフレームワーク多いよ
皮肉とかわからないゆとり世代はかわいそうだね^^
0106nobodyさん2007/03/09(金) 14:45:13ID:???
Ruby on Rails単体の盛り上がり>>>越えられない壁>>>PHPフレームワーク全部の話題
0107nobodyさん2007/03/09(金) 18:06:17ID:???
乱立している理由なんてPHPが普及してるからじゃねーの としか言いようがない
0108nobodyさん2007/03/09(金) 18:12:06ID:???
Rails真似るなら完璧に真似ろよ。
所々それと違うところが多くてうざい。
っていうかRails使える無料サーバがあればいいや。
0109nobodyさん2007/03/10(土) 07:11:37ID:???
おいおいRailsヨイショしたいならこんな過疎スレじゃなくて本スレでやれよ(w
0110nobodyさん2007/03/10(土) 09:42:26ID:oMuhw0IR
>>108
Railsを超えることが目標なら
完璧に真似るのはデメリット。
0111nobodyさん2007/03/10(土) 10:26:35ID:???
Ruby on Railsの作者が、PHP on Railsを作ってくれるのが一番良い。
PHP on Rails > Symfony > Zend Framework
という構図になると思う
0112nobodyさん2007/03/10(土) 10:27:45ID:???
railsの作者って最初PHPで開発してて、こりゃダメだって思って、Rubyに切り替えたんじゃん。
0113nobodyさん2007/03/10(土) 14:52:15ID:???
>>112
それは知ってる。
だけど、PHP on Rails作ったら、使う人いるから創って欲しいということ。
PHP6くらいになって、PHPもまぁ使ってやってもいいかな?とDHHが思ってくれたらラッキー☆
0114nobodyさん2007/03/10(土) 16:31:35ID:???
しかしRubyという選択はすごいよな。
あんなジャップが作った過疎言語で挑戦するのは。
0115nobodyさん2007/03/11(日) 02:55:55ID:???
2chの人って、自分でジャップとかいうのが、かっこいいとか思ってんのかな。
0116nobodyさん2007/03/11(日) 05:54:09ID:???
かっこいいとは思ってねーだろw
0117nobodyさん2007/03/11(日) 10:07:04ID:???
少年ジャップでも読んで落ち着け
0118nobodyさん2007/03/11(日) 17:38:38ID:???
ダウンロードしようと思ったら404だった、、、
0119nobodyさん2007/03/12(月) 09:35:31ID:o+qmRSfV
チョッパリならかっこいいか?
0120nobodyさん2007/03/12(月) 15:51:45ID:P8Amefsi
selectTagではまっています。
usersテーブルにprefecture_idフィールドを設けてprefecturesテーブルのidとひもづけたいです。
<?php echo $html->selectTag('User/prefecture', $prefectures, null, null, null, false); ?>
user.phpでは
var $belongsTo = array('Prefecture' =>
array('className' => 'Prefecture',
'conditions' => '',
'order' => 'Prefecture.id ASC',
'foreignKey' => 'prefecture_id'
)
);
prefecture.phpでは
var $hasOne = array('User' =>
array('className' => 'User',
'conditions' => '',
'order' => '',
'dependent' => true,
'foreignKey' => 'prefecture_id'
)
);
とすると
Call to a member function on a non-object in users_controller.php on line 23
となります。
該当行は
$this->Prefectures->generateList(null, 'id ASC', null, '{n}.Prefecture.id', '{n}.Prefecture.name');
です。
どこが原因かどなたかおわかりになりますでしょうか?
よろしくお願いします。
0121nobodyさん2007/03/12(月) 17:04:11ID:???
$this->Prefectures
rails記法ならPrefectureでないかい?
モデルもPrefecture.phpの様だし
0122nobodyさん2007/03/12(月) 17:41:39ID:P8Amefsi
>>121
レスどうもありがとうございます。
おっしゃるとおり、
$this->Prefecture->generateList();
とすることで、該当行のエラーはでなくなりましたが、
Undefined variable: prefectures in add.thtml on line 44
と別のエラーがでてしまいました。
44行目は>>120にあるように
<?php echo $html->selectTag('Participation/prefecture', $prefectures, null, null, null, false); ?>
です。
$prefecturesを$prefectureとすると
Undefined variable: prefecture in add.thtml on line 44
となります。
なお、users_controlle.phpに
var $uses = array('Prefecture');
を定義しました。
これを入れないと
Call to a member function on a non-object in users_controller.php on line 23
となります。
そもそも$usesを使わないとエラーなのはおかしいのでしょうか?
0123nobodyさん2007/03/12(月) 18:33:57ID:???
controllerからviewにどんな変数をセットしてるか分からんと答えられん
01241202007/03/14(水) 22:40:27ID:QrdB0vAL
以下のコードで解決しました。
$this->set('prefectures', $this->User->Prefecture->generateList());
User を間にはさんで set すればよいようですね。
でもこのやり方でよいかどうか疑問です。。。
http://groups.google.ch/group/cake-php/ で探しました。
どうもありがとうございました。
0125nobodyさん2007/03/18(日) 16:45:53ID:???
http://cakephp.seesaa.net/

この人なんでこんなgoogle trends気にしまくってるの?
ZFやsymfonyに比べてcakeのドキュメントは読みにくいから、
単に検索頻度が多いだけって気づかないんだろうか
0126nobodyさん2007/03/19(月) 15:56:58ID:???
>>125
あー。そういう考え方もあるね(苦笑)
0127nobodyさん2007/03/21(水) 18:05:49ID:???
これってrender without layoutみたいな機能は無い?
View中でrequestActionではなくrenderWithoutLayoutしたいんだが…
views/elementsに入れるかapp_controller弄って
elements検索パス拡張→renderElementするしかないのかな。

あと関係ないけど一つのアクションで複数insertするとき
$this->Model->save(array(...))の前に$this->Model->id=null;入れなくちゃならないんだね。
数分嵌ったわ。createとかあればいいのにな。
っと思って調べたらid=false, data=array()するcreate()てのがあるのか。
Railsとの微妙な違いにとまどう。
0128nobodyさん2007/04/02(月) 13:08:29ID:???
>>127
あーそれ俺もハマった。
まぁ理屈としてはわからなくもないんだけどなぁ
ドキュメントには書いてあったけど、同じケースの情報無かったよね?
頻出しそうな処理だと思うんだけどねえ。
それともみんな他のやり方で複数insertしてんのかなあ
0129nobodyさん2007/04/02(月) 16:46:26ID:???
mysqlのauto incrementみたいな感覚でpostgresも考えてましたが、
postgresでのシーケンスがなぜかうまく動作しないようなので
$this['data']['Hoge']['id'] = $this=>Hoge->getMaxId +1
してますがそれが何か
0130nobodyさん2007/04/02(月) 21:44:58ID:???
ちょっと質問。model中からアソシエーションの無い別のモデルを使いたいとき、どうしてる?
$hasAndBelongsToMany = array('そのクラス');
すれば出来なくはないが、(実際にはhabtmテーブルがないため)軽くSQLエラーが出てる。
model中で$usesは使えないみたいだし…
0131nobodyさん2007/04/12(木) 18:08:47ID:???
あっちのスレではCodeIgniterで盛り上がってるのにおまいらときたら
0132nobodyさん2007/04/12(木) 19:07:15ID:???
>>131
日本語情報が増えてきたからっていきなり出てくんな
0133nobodyさん2007/04/15(日) 04:00:43ID:???
フレームワークを勉強しようと思ってcakeのチュートリアルをやってるんだが
なかなか理解できん。。。
逆引きの解説とかないのだろうか?
0134nobodyさん2007/04/15(日) 12:41:51ID:???
>>133
そのためのGoogle
0135nobodyさん2007/04/15(日) 12:50:33ID:???
  \(^o^)/             \(^o^)/ Cakeオワタ
    )  )               ノ ノ
((((  > ̄ > )))) \(^o^)/ ((( < ̄< ))))
              )  )
         (((  > ̄ > ))))    code igniterハジマタ
0136nobodyさん2007/04/15(日) 13:09:30ID:???
  \(^o^)/             \(^o^)/ code igniterハジマタ
    )  )               ノ ノ
((((  > ̄ > )))) \(^o^)/ ((( < ̄< ))))
              )  )
         (((  > ̄ > ))))    code igniterオワタ
0137nobodyさん2007/04/15(日) 13:37:36ID:???
いやいや
あっちのスレでは確かにCI盛り上がってるけど、
CakeはCakeで用途に応じて使い分ける事になると思うぜ

5人前後のチームで開発するとかなら
Cake選択した方がいいよ、情報多いし。
CIの日本語情報待ってても埒が明かん。やってくれてるありがたい人はいるけど。
0138nobodyさん2007/04/18(水) 09:35:56ID:???
>>137

>>135-136 あたりには全く期待できないしな。



0139nobodyさん2007/04/25(水) 02:48:53ID:???
>>138
始まって、そしてすぐ終わったという分かりやすい日本語情報以上に必要なものなんてあるか?
0140nobodyさん2007/04/25(水) 15:09:41ID:???
とりあえずAPIドキュメントをアルファベット順にしろと言いたい
0141nobodyさん2007/04/26(木) 18:41:50ID:tC5hNJVI
CakePHP解説書 CakePHP Recipes 発売!
日本語版まだ?

http://www.amazon.co.jp/Cakephp-Recipes-Fabio-Cevasco/dp/0321497732/ref=pd_bbs_sr_1/503-3174338-7104719?ie=UTF8&s=english-books&qid=1177580396&sr=8-1
Amazonで予約可。近日発売! 2009/1/21予定!



( ゚д゚)ポカーン 
0142nobodyさん2007/05/04(金) 10:37:35ID:???
>>141
http://www.amazon.com/CakePHP-Recipes-Fabio-Cevasco/dp/0321497732
0143nobodyさん2007/05/05(土) 01:46:41ID:???
cakephpってscaffoldでpagerつくってくれんの?
それくらいやってくれんとほんと使いもんにならんのだが…
0144nobodyさん2007/05/05(土) 03:08:52ID:???
scaffold自体使いもんにならんだろ。
あれはあくまで初期実装テスト用。
decorateやMasterbakeでも入れなさい
0145nobodyさん2007/05/05(土) 10:08:09ID:???
つうかcakeの肝はbakeやろ
0146nobodyさん2007/05/06(日) 00:26:48ID:???
>>144
TurboGearsやDjango、symfonyには素晴らしいscaffoldがあるよ。
凄い細かいところまで機能拡張できる。
少量の手間で実用十分なバックエンドツールが作れる。

>>145
bakeって1度吐き出したら終わりなんじゃないの?
テーブル変更したら反映してくれる?

いろいろ調べてみたら、どうやらdevバージョンではページャやソートを
付けてくれるみたいだな。

とりあえず今はpaginationコンポーネントを_beforeScaffoldに無理やり突っ込んで
Pagination実現したけど、やっぱイマイチだなぁ…
こりゃ4しか選択肢がないプロジェクトでしかメリットねーな
0147nobodyさん2007/05/06(日) 00:31:22ID:???
>>146
いや、>>144は「CakePHPのscaffoldが使い物にならん」って話だろ
常識的に考えて
0148nobodyさん2007/05/06(日) 00:54:52ID:???
>>147
だからdecorateやMasterbakeは吐き出して終わりで、
テーブル変更に対応できないんじゃないのかって聞いてるんだけど、
それくらいわかるだろ?常識的に考えて。
0149nobodyさん2007/05/06(日) 01:04:29ID:???
そんなこと誰も聞いてないだろ
0150nobodyさん2007/05/06(日) 01:07:03ID:???
>>149
>bakeって1度吐き出したら終わりなんじゃないの?
>テーブル変更したら反映してくれる?

まぁいいや、んで反映してくれんの?
0151nobodyさん2007/05/06(日) 01:54:52ID:???
2ちゃんねるで討論に勝つ方法。

1.都合が悪いときは黙秘。
2.都合が悪いときは「ぐぐれ」。
0152nobodyさん2007/05/06(日) 02:06:20ID:???
テーブルの何を変更したときに
何をどこに反映して欲しいのか分からん
0153nobodyさん2007/05/06(日) 02:07:09ID:???
この人は何故誰も聞いてないのにテーブル変更の反映にしがみついているの?
bakeもdecorateもMasterbakeも出来ない(と思う)けど、
だったら変更を反映する物を作ってくれるとでもいうわけ?


是非お願いします。それがないからCakeは使いたくない。
0154nobodyさん2007/05/06(日) 02:07:18ID:???
>>150
できんよ。masterbakeはただのジェネレータ。
現状rails派生の中ではCIに続いて2番目に貧弱なんじゃね?
0155nobodyさん2007/05/06(日) 02:14:00ID:???
>>152
は?普通に>>146であげられてるFWのラインナップ見ればそれくらいわかるだろ?
カラム付け足したらその分のカラムが出てくるとか、結合キー足したらそのリンク先の
テーブルの内容が出てくるとか。

ソースの上書き無しに他のFWならそれが可能なわけですが。
0156nobodyさん2007/05/06(日) 02:23:44ID:???
あと素晴らしいbakeを作ってくれるなら、
是非カラムのコメントをhumane field nameにする機能を。
0157nobodyさん2007/05/06(日) 03:20:02ID:???
ぶっちゃけCakeなんか使ってられない。

よほど短納期で品質が低くてもOKならいいかもしれんが、
それにしたってCakeより優れたフレームワークが他にあるし。
0158nobodyさん2007/05/06(日) 03:28:26ID:h5MYHYt1
トランザクション機能さえ正式実装されてないんだからお話にならないよな
0159nobodyさん2007/05/06(日) 03:56:20ID:???
paginationが標準じゃないってのが全てを物語っている
0160nobodyさん2007/05/06(日) 04:53:05ID:???
ここで出てきた、欲しいという機能はすべてあるし。
使った事無い奴が、無いとかいってんじゃねーよ。
0161nobodyさん2007/05/06(日) 05:21:18ID:???
標準で用意されてないって話なのが分からん奴がいるとは・・
0162nobodyさん2007/05/06(日) 06:29:20ID:???
cakeなだけにつくりも甘いぜ
0163nobodyさん2007/05/06(日) 06:44:15ID:???
>>160
>ここで出てきた、欲しいという機能はすべてあるし。
ほんとにあるならこんなに盛り上がってないしw
使った事無い奴が、あるとかいってんじゃねーよ。
0164nobodyさん2007/05/06(日) 09:34:25ID:???
頑張って出来なきゃクソ以前。
頑張らないと出来ないからクソ。
0165nobodyさん2007/05/07(月) 06:26:31ID:????2BP(0)
CakePHPで、だれかxreaでHP,会員認証、会員向けコンテンツ、ブログやってる人いませんか?
0166nobodyさん2007/05/07(月) 07:04:41ID:???
公開してないけど稼働しているよ。なんか不具合でも?
0167nobodyさん2007/05/07(月) 12:22:45ID:????2BP(0)
見せていただけますか。
0168nobodyさん2007/05/07(月) 12:26:32ID:???
嫌です。
0169nobodyさん2007/05/07(月) 12:45:42ID:????2BP(0)
括弧悪いのかな?
0170nobodyさん2007/05/07(月) 12:48:00ID:???
意味分からん。
なんで無料で見せてやらないといけないんだ?
金払うなら金額によっては見せてやる。
価値のあるコンテンツに金払うのは常識。
嫌なら自分で探せ。
0171nobodyさん2007/05/07(月) 13:01:18ID:????2BP(0)
別にいいよ。君には見せてもらおうとは思わん。朝鮮人みたいな奴だな。
01721662007/05/07(月) 16:35:56ID:???
見たいだけか。設置の質問くらいなら答えられると思ったんだが。
残念ながら開発中なので見せられない。
0173nobodyさん2007/05/07(月) 22:45:53ID:????2BP(0)
いまさら二郎
0174nobodyさん2007/05/07(月) 22:48:01ID:???
ここは匿名掲示板
しかも、悪い噂も多い2ちゃんねる。

自分が作っているのを教えると、
このサイトの開発者は
2ちゃんねらだとばれる。

常識的に考えて教えるわけが無い。
0175nobodyさん2007/05/07(月) 23:26:24ID:???
まーそうだね
0176nobodyさん2007/05/08(火) 00:10:31ID:???
タダで見せてもらおうなんて朝鮮人みたいな奴だな
0177nobodyさん2007/05/08(火) 02:14:27ID:???
>>176
おまえそういう偏見の強いとことか朝鮮人みたいだな
0178nobodyさん2007/05/08(火) 02:22:35ID:???
>>177
おまえのそういう朝鮮人みたいなところが好きだぜ
0179nobodyさん2007/05/08(火) 03:24:46ID:???
朝鮮人のチンポしゃぶりたい
0180nobodyさん2007/05/08(火) 03:25:29ID:???
キムチの味がするがいいニダ?
0181nobodyさん2007/05/09(水) 00:45:48ID:???
ああ、最高だ
0182nobodyさん2007/05/11(金) 09:49:27ID:???
書籍買ってね♥

Web2.0 ビギナーズバイブル
http://www.cbook24.com/bm_detail.asp?sku=9784839923228
Chapter 9 CakePHPとPHPによるWeb 2.0高速開発
9-1 WebアプリケーションフレームワークCakePHP
9-1-1 CakePHPとは
9-2 習うより慣れる
9-2-1 ウェブログを作ろう!
9-2-2 開発環境について
9-2-3 CakePHPのダウンロード
9-2-4 新規プロジェクトの作成
9-2-5 データベースの準備
9-3 アプリケーションを作る
9-3-1 新規アプリケーションの作成
9-3-2 モデルの作成
9-3-3 コントローラの作成
9-3-4 ビューの作成
9-3-5 アプリケーションを動かしてみる
9-3-6 なぜ動くのか?
9-4 ブログ機能を追加する
9-4-1 カテゴリとコメント機能を付ける
9-4-2 カテゴリとコメント機能の仕組みを理解する
9-4-3 認証機能を付ける
9-4-4 RSS配信機能を付ける
9-5 もっとブログ
9-5-1 indexページを変えてみる
9-5-2 カテゴリ別indexページを作ってみる
9-5-3 カテゴリ一覧を作ってみる
9-5-4 詳細表示画面でコメントを入力できるようにする
9-6 スタイルの変更
9-6-1 スタイルシートを使う
0183nobodyさん2007/05/11(金) 17:49:19ID:???
それかったよかったよ
0184nobodyさん2007/05/11(金) 19:38:19ID:???
> それ かったよ かったよ


なんで二回も言うんだよ?!
0185nobodyさん2007/05/11(金) 21:05:47ID:???
2冊買ったらもう一冊ついてくるんだもん
0186nobodyさん2007/05/12(土) 15:25:45ID:???
書籍買ってね?

PHPによるJavaScriptを書かないAjax
http://www.9-ten.co.jp/bookdata/1753.php

Part 4  AjaxをサポートするPHPフレームワーク

4-1 CakePHP
 4-1-1 CakePHPのインストール
 4-1-2 アプリケーションの作成
 4-1-3 CakePHPのヘルパー
 4-1-4 データベースへのアクセス
 4-1-5 CakePHPのAjaxサポート
 4-1-6 高度なAjax機能
0187nobodyさん2007/05/12(土) 15:27:41ID:???
書籍じゃねーのか。
http://www.phppro.jp/magazine/2007_winter.php#article5
0188nobodyさん2007/05/17(木) 18:27:26ID:???
オマイラcake話はないのか。

という俺もないが。
0189nobodyさん2007/05/21(月) 13:07:42ID:???
サニタイズ、ヴァリデートの例を探しているんだけど、どこを見れば良い?
0190nobodyさん2007/05/21(月) 13:29:44ID:???
>>189
http://cakephp.jp/doc/
0191nobodyさん2007/05/24(木) 14:12:50ID:GefDq5o4
レイアウトビューでセッションの値を使いたいんですが、一番スマートな方法はどんな方法がありますか?
レイアウトなのでコントローラからも直接渡せないのです。
よろしくお願いいたします。
0192nobodyさん2007/05/24(木) 15:09:11ID:???
コントローラでsetして使えばいいんじゃないの。
一番スマートかどうかは知らんが
0193nobodyさん2007/05/24(木) 15:09:46ID:GefDq5o4
レイアウトはすべてのビューで使われてるので、どのコントローラで渡せばいいのかわからないんです。
0194nobodyさん2007/05/24(木) 15:13:26ID:???
横レスだけど、これじゃ不十分なの?
ttp://www.cakephp.jp/doc/ch07s02.html#id4806116
0195nobodyさん2007/05/24(木) 15:15:41ID:GefDq5o4
たとえば、レイアウトにログインリンクとログアウトリンクのどちらかを表示させたくて、
それをセッションで判断してるんですけど、
すべてのコントローラとすべてのアクションからセッションの値(ログインしているか)をsetするのは非現実的なので、
何かいい方法はないかなぁという質問です。
0196nobodyさん2007/05/24(木) 15:22:08ID:???
ああそういうことか。勘違いしてたな、こりゃすまんかった

で、現実的にはAppControllerの__construct()をオーバーライドして
そこでsetするのがいいんじゃないかな。

cakeのライブラリを直接いじるのが気になるなら、
AppControllerを継承したMyAppControllerクラスを作って
__construct()のオーバーライドはそこですることにして、
他の自作のたくさんのコントローラはMyApppControllerを継承する。
0197nobodyさん2007/05/24(木) 15:35:35ID:IzNiejk0
[email protected]
ここだけは気をつけろ
0198nobodyさん2007/05/24(木) 16:28:48ID:GefDq5o4
>>196
ちょっとめんどくさそうなんで、別の方法模索します。どうもです。
0199nobodyさん2007/05/25(金) 03:17:17ID:???
ただでアドバイスしてもらってその言い草。
どうせ、業務でつかうんだろうに。
0200nobodyさん2007/05/25(金) 03:53:03ID:???
しかも意味分かってないねこいつ。
コンストラクタのオーバーライドが面倒って・・・w
0201nobodyさん2007/05/25(金) 11:54:10ID:???
>>196
MyAppController.phpを作らなくても、
appディレクトリ直下にapp_controller.phpをおけば、アプリからは自動的にこれが使われるようになるよ。
AppModelも同様。
0202nobodyさん2007/05/25(金) 14:13:21ID:???
すごい速さで開発が進んでいる・・・
0203nobodyさん2007/05/25(金) 14:34:37ID:heBQtPKb
findAllByName(false)
って感じでfalse渡すと全部拾ってくるのはどういう理屈?
■ このスレッドは過去ログ倉庫に格納されています