【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/
0044nobodyさん
2006/12/04(月) 11:00:42ID:???0046nobodyさん
2006/12/04(月) 18:02:51ID:???ということでは
004724
2006/12/05(火) 15:58:17ID:???■pearでの接続は実装されていないことを再確認しました。(cake_1.1.10.3825.zip)
cake/libs/model/dbo/dbo_pear.phpは、クラス名すら違っています。
(DBO_Pear、正しくは、DboPear)つまり、一度もテストすらされていないようです。
なぜそんなものをリリースに入れているのか不明です。文化の違いでしょうか。
クラス名を変更してもdsnが生成されません。disconnect()も「先にこっちを・・・」
といったメッセージの出力のみです。
■ADODB試してみました。Interbase,Firebirdではおそらくテーブル名、フィールド名
の規約で使えません。Interbase,Firebirdは、テーブル名とフィールド名は
大文字となります。
create table posts ...とするとPOSTSというテーブルが作成されます。
create table "posts" ...でpostsが作成されますが、
select * from posts だとテーブルPOSTSが対象となり、postsを対象に
するにはselect * from "posts"と"でくくらないといけません。
フィールド名も同じです。
そのため、チュートリアルは動作しないようです。
回避する方法もなさそうなので断念します。
004929
2006/12/07(木) 15:33:20ID:???http://p4life.jp/cake/
のアプリケーションはphp4でうごきませんでしたが、
ブログ作成チュートリアル
http://www.cakephp.jp/doc/blog_tutorial.html
はphp4で動きました!
Controllerの書き方を考える必要があったようですね。
0050nobodyさん
2006/12/12(火) 09:03:56ID:???modelのJoinで同一テーブルに対してhasAndBelongsToManyの関連を
複数設定した時に、scaffoldで生成した更新画面の関連表示が一つしか
出てくれない状態になってしまいます。
配列のキーはそれぞれのJoinTable名をつけてるので、キーを上書きしてる事は
ないと思うんですが、同様の現象を経験した方いらっしゃるでしょうか?
classNameが一緒だと駄目なのかなぁ・・・
0051nobodyさん
2006/12/14(木) 08:15:45ID:???1.1.9の段階ではDBO_Adodbはバグだらけだったよ。
使うならデータベースはMySQLかPostgreSQLにしておいたほうが無難。
0052nobodyさん
2006/12/14(木) 21:06:37ID:???自己レスです。
classNameを分けることで無事うまくいきました。
具体的な対応としては、対象テーブルを基底クラスとしてJoin毎に継承クラスを
ベタに作成してバインディングしたところ、期待した挙動になってくれました。
ん〜、いいフレームワークだ。
0053nobodyさん
2006/12/19(火) 17:04:45ID:???でアクセスしたときに静的なHTMLを表示させたいんですが、view などはどこに置けばいいのでしょう?
/app/config/core.php の
define('CAKE_ADMIN', 'admin');
はコメントをはずしてあります。
/app/views/pages/admin_home.thtml なるものを作成しましたが、以下のエラーが表示されました。
Missing controller
You are seeing this error because controller Controller could not be found.
Notice: If you want to customize this error message, create app\views/errors/missing_controller.thtml.
Fatal: Create the class below in file : app\controllers\controller.php
<?php
class Controller extends AppController {
var $name = '';
}
?>
0057nobodyさん
2007/01/11(木) 10:42:20ID:???レコードの追加・削除・編集を繰り返していると、
なぜか時々、追加したレコードの前に、「空のレコード」が
いくつか挿入されてることがあります。
これまで何度かあったのですが、うまく再現できないので、
MySQLの問題なのかCakeの方なのかの切り分けもできません・・・。
MySQLではフィールド 'id' をauto incrimentに設定してます。
(フィールド追加するときはauto incrimentにまかせてます)
どこからあたりをつけていけば良いのかのヒントでも
頂ければ助かります。
環境は
XAMPP
cake1.1.12.4205
です。
どうか、ご教示よろしくお願いします。
005857
2007/01/11(木) 10:43:37ID:???×auto incriment
でしたすんません・・・
005957
2007/01/15(月) 15:43:05ID:???デリートをPHPMyAdminでやってるから?関係ないか
0060nobodyさん
2007/01/26(金) 23:45:23ID:???もし、いたら伺いたいのですが結構バギーでしょうか?
CakePHP1.1で開発始めたのですが、メール機能等で欲しい機能が
充実しているので1.2をやっておいたほうがいいのか、と考えております。
よろしければ、現状での感想と1.2使ううえのアドバイスをお願い致します。
m( __ __ )m
0062nobodyさん
2007/01/27(土) 21:40:37ID:???貴重なアドバイス感謝です。
ドキュメントとか考えるとやはり1.1のいい感じですね。
ありがとうございましたw
他にも何かありましたら、ご教授お願い致します。
0063nobodyさん
2007/02/01(木) 09:23:03ID:???・cakePHPのキャッシングってどこからどこまでの動作を飛ばすのか
・view/elementsがviewとキャッシュの生存時間が違う場合キャッシュできない?
自前でしろってことかしらん
・view/layoutsでヘッダ部を動的に変えたい場合どうするんだろう。
css変えたいとかjsのライブラリをロードしたりしなかったりしたい
誰か知ってたら教えてプリーズ
0064nobodyさん
2007/02/01(木) 10:56:18ID:???>・cakePHPのキャッシングってどこからどこまでの動作を飛ばすのか
コントローラから吹っ飛ぶので、キャッシュファイルにはコントローラ生成のPHPが書いてある。
他はどっかにコードが落ちてそうな気がする。
0065nobodyさん
2007/02/01(木) 15:01:58ID:???適当に変数setしてそれ見ればいいんじゃないの?
0066nobodyさん
2007/02/06(火) 10:10:41ID:???サンクスです。
$title_for_layout、$content_for_layout
しか使えないのかと思ってた。
0067nobodyさん
2007/02/07(水) 06:36:38ID:???最初「ケークPHP」と読んでしまった。
0069nobodyさん
2007/02/07(水) 14:02:03ID:???だよね。俺まえも「エイジャックス」のこと「アジャックス」って読んでた前科モチだから・・・
「ペア」も「ピアー」って読んでたし・・・
0070nobodyさん
2007/02/08(木) 16:29:26ID:???0072nobodyさん
2007/02/08(木) 17:35:17ID:???0073nobodyさん
2007/02/08(木) 21:05:03ID:???いちおう下げて質問書いときます。
問題は、cakePHPでファイルアップロードが出来ない・・・
<input type="file" name="image" />
こんな感じでフツーにファイルを送信して、
$_FILESで参照してるんだけど、
cakePHPで実装すると$_FILESの値が空になります。
pr($this->rapams['form']);
では、
['image'] => hogehoge.jpg
とファイル名のみ参照できる模様で、ますます混乱するばかり。
なんか解決のヒントないですか
0074nobodyさん
2007/02/09(金) 09:21:40ID:???なわけないか
0075nobodyさん
2007/02/11(日) 08:17:38ID:???>>74 の言うとおり enctype="multipart/form-data" がないに一票。
0076nobodyさん
2007/02/26(月) 17:58:23ID:???1.テンプレートの方でファイル送信フォームのとこ
<?php echo $html->file('data[Hoge][image]', array('id' => 'hoge_image', 'size' => '40', 'value' => $hoges['Hoge']['image'], )) ?>
とする
2. $this->params['data']['Hoge']['image']['name']に名前が入ってるのと
$this->params['data']['Hoge']['image']['size']にサイズが入ってるのを確認する
3.
move_uploaded_file($this->params['data']['Hoge']['image']['tmp_name'], WWW_ROOT . "images/uploaded/". $this->params['data']['Hoge']['image']['name'])
ってな感じでどうよ
0077nobodyさん
2007/02/26(月) 22:12:58ID:???modelにhogeを追加しろってエラー出るんですが、、、Railsじゃできるんだけどなぁ
0078nobodyさん
2007/02/26(月) 22:49:28ID:???controller内に
var $uses=array();
とかやってみたらいけるんでないかい。ためしてないけど。
だめなら$useTable=array();なHogeモデルを作ったらいけるんでないかい。
ためしてないけど。
0079nobodyさん
2007/02/27(火) 00:36:01ID:???でうまくいきました!
ありがとうございます。
でも、なぜかうまくいったのかわからないので、具体的に教えてくれたらすごく嬉しいです。
0080nobodyさん
2007/02/27(火) 01:34:37ID:???78ではないが、
Hoge_ControllerはデフォルトでHogeというモデルを読み込もうとするから。
いわゆるひとつのconvention over configuration
0081nobodyさん
2007/02/27(火) 11:39:45ID:???ダミーとして、配列を無理矢理渡してあげるって幹事?
0082nobodyさん
2007/02/27(火) 12:08:47ID:???$users = array('Hoge');
がデフォで設定されるんで、モデルを使わないことを明示してあげるって漢字
0083nobodyさん
2007/02/27(火) 12:20:08ID:???なるほどね!
hogeコントローラで、hoge2モデルを使いたかったら、
$uses = array('hoge2');
ですね。
hoge2もhoge3も使いたい場合はどうしたらいいんでしょう?
ってかここ人少ないですね。cakeって人気ないのかな?
0084nobodyさん
2007/02/27(火) 14:22:29ID:???$uses=array('hoge','hoge2','hoge3');
何のための配列なのかと小一時間
たしかにもりあがってねえなーCake。
0085nobodyさん
2007/02/27(火) 19:30:45ID:???>77みたいなのが例外
0086nobodyさん
2007/02/27(火) 21:34:43ID:???Smarty間に挟んでるのかな。
0087nobodyさん
2007/02/27(火) 21:47:05ID:???逆にやったことない人は挫折しやすい気がする。
Railsみたいに本出てないからなぁ。
0088nobodyさん
2007/02/27(火) 23:32:59ID:???グローバル変数はどこで定義する?
0089nobodyさん
2007/02/27(火) 23:43:04ID:???core.phpに設定しときました。
0091nobodyさん
2007/02/28(水) 12:06:30ID:???/app/config/bootstrap.php
これですか?それともcakeフォルダの中の?
そういうノウハウはどこで学ぶんでしょうか?
0092nobodyさん
2007/02/28(水) 14:03:51ID:???0093nobodyさん
2007/02/28(水) 14:46:51ID:???マニュアル http://www.cakephp.jp/doc/
フォーラム http://cakephp.jp/modules/newbb/
Wiki http://cakephp.jp/wiki/
あとBakeryというのがいろいろコンポーネントやらチュートリアルやらをまとめてくれていて便利
http://bakery.cakephp.org/
0094nobodyさん
2007/03/05(月) 18:53:07ID:5xyR9GqB| ノ _, ,_ ヽ
/ ● ● |
| ( _●_) ミ _ (⌒)
彡、 |∪| ノ
⊂⌒ヽ / ヽノ ヽ /⌒つ
\ ヽ / ヽ /
\_,,ノ |、_ノ
0095nobodyさん
2007/03/06(火) 22:58:14ID:???0096nobodyさん
2007/03/07(水) 16:24:28ID:VDwNq8qV0097nobodyさん
2007/03/07(水) 16:32:50ID:???0098nobodyさん
2007/03/07(水) 17:30:19ID:???0099nobodyさん
2007/03/07(水) 17:45:06ID:???0100nobodyさん
2007/03/09(金) 12:47:31ID:GFS6POXv0102nobodyさん
2007/03/09(金) 13:31:48ID:GFS6POXvJavaのこと言ってんの?
PHP対抗はRubyか.netでしょ
RubyにRailsと同等のシェアを持つフレームワークあるの?
0103nobodyさん
2007/03/09(金) 13:50:50ID:???0104nobodyさん
2007/03/09(金) 13:52:37ID:???>RubyにRailsと同等のシェアを持つフレームワークあるの?
rubyは他に何もないマイナー言語だから一極集中してるだけ。
それくらい普通に考えればわかるだろうに、>>100はかわいそうな子だなぁ
0105nobodyさん
2007/03/09(金) 14:37:43ID:GFS6POXvPHPでは訴求力のあるフレームワークが無いんだねっていう話
Javaは乱立してても有用なフレームワーク多いよ
皮肉とかわからないゆとり世代はかわいそうだね^^
0106nobodyさん
2007/03/09(金) 14:45:13ID:???0107nobodyさん
2007/03/09(金) 18:06:17ID:???0108nobodyさん
2007/03/09(金) 18:12:06ID:???所々それと違うところが多くてうざい。
っていうかRails使える無料サーバがあればいいや。
0109nobodyさん
2007/03/10(土) 07:11:37ID:???0110nobodyさん
2007/03/10(土) 09:42:26ID:oMuhw0IRRailsを超えることが目標なら
完璧に真似るのはデメリット。
0111nobodyさん
2007/03/10(土) 10:26:35ID:???PHP on Rails > Symfony > Zend Framework
という構図になると思う
0112nobodyさん
2007/03/10(土) 10:27:45ID:???0113nobodyさん
2007/03/10(土) 14:52:15ID:???それは知ってる。
だけど、PHP on Rails作ったら、使う人いるから創って欲しいということ。
PHP6くらいになって、PHPもまぁ使ってやってもいいかな?とDHHが思ってくれたらラッキー☆
0114nobodyさん
2007/03/10(土) 16:31:35ID:???あんなジャップが作った過疎言語で挑戦するのは。
0115nobodyさん
2007/03/11(日) 02:55:55ID:???0116nobodyさん
2007/03/11(日) 05:54:09ID:???0117nobodyさん
2007/03/11(日) 10:07:04ID:???0118nobodyさん
2007/03/11(日) 17:38:38ID:???0119nobodyさん
2007/03/12(月) 09:35:31ID:o+qmRSfV0120nobodyさん
2007/03/12(月) 15:51:45ID:P8Amefsiusersテーブルに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:???rails記法ならPrefectureでないかい?
モデルもPrefecture.phpの様だし
0122nobodyさん
2007/03/12(月) 17:41:39ID:P8Amefsiレスどうもありがとうございます。
おっしゃるとおり、
$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:???0124120
2007/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:???この人なんでこんなgoogle trends気にしまくってるの?
ZFやsymfonyに比べてcakeのドキュメントは読みにくいから、
単に検索頻度が多いだけって気づかないんだろうか
0127nobodyさん
2007/03/21(水) 18:05:49ID:???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:???あーそれ俺もハマった。
まぁ理屈としてはわからなくもないんだけどなぁ
ドキュメントには書いてあったけど、同じケースの情報無かったよね?
頻出しそうな処理だと思うんだけどねえ。
それともみんな他のやり方で複数insertしてんのかなあ
0129nobodyさん
2007/04/02(月) 16:46:26ID:???postgresでのシーケンスがなぜかうまく動作しないようなので
$this['data']['Hoge']['id'] = $this=>Hoge->getMaxId +1
してますがそれが何か
0130nobodyさん
2007/04/02(月) 21:44:58ID:???$hasAndBelongsToMany = array('そのクラス');
すれば出来なくはないが、(実際にはhabtmテーブルがないため)軽くSQLエラーが出てる。
model中で$usesは使えないみたいだし…
0131nobodyさん
2007/04/12(木) 18:08:47ID:???0133nobodyさん
2007/04/15(日) 04:00:43ID:???なかなか理解できん。。。
逆引きの解説とかないのだろうか?
0135nobodyさん
2007/04/15(日) 12:50:33ID:???) ) ノ ノ
(((( > ̄ > )))) \(^o^)/ ((( < ̄< ))))
) )
((( > ̄ > )))) code igniterハジマタ
0136nobodyさん
2007/04/15(日) 13:09:30ID:???) ) ノ ノ
(((( > ̄ > )))) \(^o^)/ ((( < ̄< ))))
) )
((( > ̄ > )))) code igniterオワタ
0137nobodyさん
2007/04/15(日) 13:37:36ID:???あっちのスレでは確かにCI盛り上がってるけど、
CakeはCakeで用途に応じて使い分ける事になると思うぜ
5人前後のチームで開発するとかなら
Cake選択した方がいいよ、情報多いし。
CIの日本語情報待ってても埒が明かん。やってくれてるありがたい人はいるけど。
0140nobodyさん
2007/04/25(水) 15:09:41ID:???0141nobodyさん
2007/04/26(木) 18:41:50ID:tC5hNJVI日本語版まだ?
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:???http://www.amazon.com/CakePHP-Recipes-Fabio-Cevasco/dp/0321497732
■ このスレッドは過去ログ倉庫に格納されています