トップページphp
1001コメント296KB

【PHP】フレームワーク CakePHP 4ホール目【v1.2】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2008/06/20(金) 01:24:40ID:???
http://www.cakephp.org/

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

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

Cookbook :: 1.2 Collection :: マニュアル
http://book.cakephp.org/ja

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

あとこのへんとか(初心者向けTIPS)
http://www.avatarfinancial.com/pages/cake/

CakePHP入門リンク集
ttp://pub.studio15.jp/2007/11/13/cakephp-links/

【PHP】フレームワーク CakePHP 3ホール目【本命】
http://pc11.2ch.net/test/read.cgi/php/1205475360/
【PHP】フレームワーク CakePHP 2ホール目
http://pc11.2ch.net/test/read.cgi/php/1194976228/
【PHP】フレームワーク CakePHP
http://pc11.2ch.net/test/read.cgi/php/1163850802/
0404nobodyさん2008/10/02(木) 16:10:21ID:???
RC3きたね。
http://cakeforge.org/frs/?group_id=23&release_id=399
0405nobodyさん2008/10/02(木) 16:24:33ID:???
http://bakery.cakephp.org/articles/view/release-cakephp-rc3-the-rc-of-triumph

the bootstrap process is over 10x faster than RC2, and basic requests for static content are now about 5x faster overall.
早くなってるなら大歓迎。
0406nobodyさん2008/10/02(木) 16:47:25ID:???
>>403
だれが作るんだそんなもんw
0407nobodyさん2008/10/02(木) 18:38:43ID:???
RC3きたけど、毎日のようにnightlyいじってたので新鮮味が・・・w
あと、RC2のとき、リリース直後にすぐ修正版がでたことを忘れないように!
0408nobodyさん2008/10/02(木) 22:37:50ID:???
開発途中の社内アプリをRC2からRC3に入れ替えたけど、うごかねー
model->saveが全部うごかねー
0409nobodyさん2008/10/03(金) 00:16:10ID:???
model->saveでして保存する配列はモデル名が必須になった。
と適当に言ってみる。
0410nobodyさん2008/10/03(金) 07:26:48ID:???
CakePHPブログチュートリアルで
10.1.8 Postビューの作成
がエラーでてできねーと思ったらチュートリアルが1.2用なのかよ。
1.1でやってて1時間くらい悩んじまったよ。
0411nobodyさん2008/10/03(金) 23:52:47ID:???
>>408
まじ?大きな変更はないってどっかに書いてあったけど。
04124082008/10/04(土) 07:01:33ID:???
漏れの勘違いだったようだ。saveは動きます。
テストが動かなくなったけどね。simpletestうぜー
0413nobodyさん2008/10/05(日) 17:56:46ID:???
simpletest が動かないなら、そのsimpletestを動かすテストケースを作らないといけない。。。
本末転倒とはこのことですね。
0414nobodyさん2008/10/05(日) 18:10:04ID:???
cakeって、必ずmysqlと連動させないとだめなの?
シンプルなものとか、データーベースからめないで
作りたいときは、データーベースは連携させなくてもつくれるの?
0415nobodyさん2008/10/05(日) 18:20:00ID:???
http://www.easywebdx.com/php/files/01_03_cal.php

これとおなじことcakeでやるにはどうしたらいいの?
0416nobodyさん2008/10/05(日) 18:27:10ID:???
またおまえか
0417nobodyさん2008/10/05(日) 19:45:22ID:???
>>415
業者に頼んで作ってもらう。
0418nobodyさん2008/10/05(日) 23:46:32ID:???
cake使うときは、普通は smartyは使わないの?
0419nobodyさん2008/10/06(月) 03:34:41ID:???
>>418
Smarty使う必要性は?
あの手のテンプレートエンジンって、既に過去の遺物だけど。。
0420nobodyさん2008/10/06(月) 07:23:58ID:8+YJokg0
>>361
俺も知りたいわけだが
0421nobodyさん2008/10/06(月) 12:02:05ID:???
テストについて、えろいひと教えて

app/test/case/model/hoge.test.php
---
class HogeTest extends Hoge {
var $cacheSources = false; var $name = 'HogeTest';
var $useDbConfig = 'test_suite';
}

class HogeTestCase extends CakeTestCase {
var $fixtures = array( 'app.hoge_test' );
---

app/test/fixture/hoge_testfixture.php
---
var import = array('table' => 'hoges');

一部省略しているけど、普通にテスト作って、test.phpを実行すると

「Database table hoges for model Hoge was not found.」

と怒られます。config/database.phpには$testでテスト用DB指定して、
実際にデータベースも作っているんだけど、このエラーのように
hogesテーブルっているの?hoges_testができているから、
これだけで良いんじゃないの?hogesとhoges_test2つ作ったら
エラーはなくなったけど、意味なくない?
0422nobodyさん2008/10/06(月) 19:58:02ID:???
さてどこからツッコんだものか
0423nobodyさん2008/10/06(月) 20:46:28ID:???
* ←ココ
0424nobodyさん2008/10/06(月) 22:28:04ID:???
ツ・・ツマンネーョ・・・アァッ
0425nobodyさん2008/10/07(火) 13:12:18ID:???
CakePHPカンファレンス 参加登録しますた
0426nobodyさん2008/10/07(火) 15:39:11ID:???
忘れてたーと思って見に行ったら埋まってた。
30分で全部埋まってるw
0427nobodyさん2008/10/07(火) 19:05:05ID:???
まだ半分追加枠があるさ。
0428nobodyさん2008/10/07(火) 21:15:15ID:???
smartyとcakephpって排他使用なの?
0429nobodyさん2008/10/08(水) 04:18:11ID:???
あー、もういんじゃねえの、stableで。
見過ごせないチケットあんの?
0430nobodyさん2008/10/08(水) 10:25:50ID:???
データベース使わないで.datとかに保存するってことできる?
0431nobodyさん2008/10/09(木) 00:46:00ID:???
>>430
CAKEでやる利点をあまり思いつかない
0432nobodyさん2008/10/09(木) 02:56:13ID:???
会員系サイトつくってんだけど、そいつらのコミュニティ掲示板に画像アップしたいって
いいやがんのよ。で、普通にwebrootの下においたら、全員に丸見えだからさー
どっかに起きたいんだけど、php経由で認証判断してファイルを読み込む仕様なんだけど
こういう系のファイルってみんなはどこにおいている?

候補1)appの下にfilesとかdir作って放り込む
候補2)tmpの下におく
候補3)localeの下におく

候補1っすかねー
それか素直にDBにバイナリで持つか

0433nobodyさん2008/10/09(木) 03:22:41ID:???
データーベースって画像も登録できるんだ?
0434nobodyさん2008/10/09(木) 09:15:03ID:???
データベースを何だと思ってるんだw
0435nobodyさん2008/10/09(木) 10:32:15ID:???
いやあ、、、
テキストだけを登録できるソフト、って
先入観があったから、、、、
0436nobodyさん2008/10/09(木) 13:01:09ID:???
Cake始めようと思うんですけど、お勧めの書籍とかないですか?
0437nobodyさん2008/10/09(木) 17:22:55ID:???
>>436
まずはマニュアルのチュートリアル
0438nobodyさん2008/10/09(木) 22:07:38ID:z61RYR7M
質問です。
Cakephp1.2-RC3でformヘルパー使用してて、radioボタンのnameを[Model名][hoge]みたいにしたくて、

$radioName = 'Model名.hoge';

としたのですが、下記のようなエラーが出てしまいました。

ConnectionManager::getDataSource - Non-existent data source default

ちなみにDBは不使用です。

よかったら教えてもらえませんか…
04394382008/10/09(木) 22:10:59ID:z61RYR7M
<?php
$radioName = 'Model名.hoge';
$radioValue = array("1"=>'1');
?>
<?php echo $form->radio($radioName,$radioValue); ?>

こんな感じです
0440nobodyさん2008/10/09(木) 22:23:48ID:???
>>436
CakePHPガイドブックってのが良かった。
あとはオンラインのマニュアルと、ポケットリファレンスが
あれば十分
04414382008/10/09(木) 22:27:12ID:z61RYR7M
すみません自己解決しました。
ご迷惑をおかけしました
0442nobodyさん2008/10/10(金) 15:13:54ID:???
CakeってDB不使用にしてModel呼び出すとエラーになりませんか?
0443nobodyさん2008/10/10(金) 22:48:18ID:/mk3YX6a
DBに画像保存できるやん
0444nobodyさん2008/10/10(金) 23:19:52ID:???
>>442
$uses=false;
ってすれば別に怒られないが。
0445nobodyさん2008/10/11(土) 00:43:55ID:???
ビュー不要のアクションって、どうやって書けばいいのかな。
function test() {
echo "hoge";
}
ってコントローラに書いたら、hogeは表示されるんだけど、test.ctpが無いと警告が出る。
1.2にて。
0446nobodyさん2008/10/11(土) 00:50:54ID:???
>>445
ごめん自己解決。
function test() {
$this->autoRender = false;
echo "hoge";
}
でいけた。
0447nobodyさん2008/10/11(土) 01:24:02ID:???
>>444
それってその時点でModel使うの諦めてませんか?
0448nobodyさん2008/10/11(土) 01:58:46ID:???
何がしたいんだよ
0449nobodyさん2008/10/11(土) 02:07:49ID:???
>>448
DBを使わないフォームを作成したいのですが、
Modelを使用せずに、Controllerに入力チェックとか書いちゃうのは
MVCとしてどうなのかなぁと思いまして
0450nobodyさん2008/10/11(土) 03:42:32ID:???
MVC的に言えば、データの保存先が
データベースなのか、ファイルなのかは関係ないはずなので、
入力チェックをするとしたら、モデルでやるのが妥当。
0451nobodyさん2008/10/11(土) 05:30:44ID:???
DBlessModel作っちゃえYO
0452nobodyさん2008/10/11(土) 07:46:51ID:???
モデルに

var $useTable = false;

でモデルつかってDB使わずでいけるだろ。
0453nobodyさん2008/10/11(土) 16:48:55ID:???
>>452
その状態でバリデーションとかヘルパー使うとModel.phpでエラーになるんですよね
0454nobodyさん2008/10/11(土) 22:44:35ID:???
そーゆーことだったのか。
0455nobodyさん2008/10/13(月) 23:28:41ID:???
少し気になったんですが、仕事でCakePHPを使っている人って
今案件受けたらRCのCakePHPを使うんでしょうか…?
それとも1.1ですか?
0456nobodyさん2008/10/15(水) 13:59:49ID:???
>455
先日納品した案件は1.2RC2。特に問題はなかったよ。
今日から新しいプロジェクトの開発にかかるけど、そっちはRC3でやるつもり。
1.1は今後使うつもりはないですわ。
以前1.1で開発してたものを途中で1.2に乗り換えたとき、
変更対応でかなりロスしたもんで。
いくら現状唯一のstable版とはいえ、1.1の文法がヘタに染みつくと1.2への移行が精神的にきつくなるかと。

さて。飯にしようかね。。。
0457nobodyさん2008/10/16(木) 21:22:33ID:???
そんなに変わったのか〜
0458nobodyさん2008/10/21(火) 17:24:56ID:???
AuthComponentでAjaxログインしようとしても
<?php echo $this->requestAction('/users/login', array('return')); ?>と書くと
users/loginにリダイレクトしちゃうのは仕様?
0459nobodyさん2008/10/21(火) 22:18:09ID:???
test
0460nobodyさん2008/10/23(木) 05:04:43ID:???
PHPならどこでもいい話題だけど、あえてここで。

PHPのIDE何使っている?Eclipse?
俺、どうもEclipseのごちゃごちゃ感になじめず
今までテキストエディタを使っていた。
Java以外はなんか怪しいにおいがするし。

で、NetBeans 6.5が標準でPHPサポートするではないか。
今RCがでてる。一般的なIDE的機能はサポートされているだろうから
俺が興味あるのがリファクタリング機能。

デモをざっと見たところ変数名の置換とかには対応しているのかな?
ためしてみようとおもう。うまくCakePHPと連携できるかな?

もしすでにやっている人がいたら、なんか教えてちょうだい。
0461nobodyさん2008/10/23(木) 07:37:12ID:???
NetBeansはいずれCakePHPにも対応するらしいから期待してる。
0462nobodyさん2008/10/23(木) 10:45:32ID:???
>>461
へぇ。マジか。CakePHP対応ってどんなことするんだろう?
0463nobodyさん2008/10/23(木) 12:18:23ID:???
残念。NetBeansでリファクタリングはサポートされていないようだ。
デモにあった名前変更は、よく分からないけど
カーソル行があるスコープ名前を一括で変えるだけ?
遠くにあるコードまでは変わらないようだ。残念。
まあこんなもんか。PHPとしてはまだ初期段階だろうし、
型無し動的言語のリファクタリングは難しいだろうし。
0464nobodyさん2008/10/24(金) 18:54:01ID:???
明日カンファレンスだってーのになんだこの盛り上がりのなさは
0465nobodyさん2008/10/24(金) 22:08:58ID:???
行ってみたいけど、こういうとき地方は損だなあと感じる。
0466nobodyさん2008/10/24(金) 22:22:17ID:???
参加人数少ないしなぁ
行けるなら行きたいが
0467nobodyさん2008/10/25(土) 11:39:19ID:???
東京までの交通費が痛いよね。
0468nobodyさん2008/10/25(土) 12:15:33ID:???
いまカンファレンス来てるんだが、他に来てる人いる?
0469nobodyさん2008/10/25(土) 13:45:20ID:???
会社経費で来てますよ

RC4までくるとは予想外
0470nobodyさん2008/10/25(土) 21:06:54ID:???
1.2RC3   今ここ
1.2RC4   もうすぐ出る
1.2Stable  バグが0件になったら出る
1.3      機能追加等
2       PHP5のみサポートに変更
3       PHP6対応?
0471nobodyさん2008/10/26(日) 00:22:27ID:???
結構道のりは長そうだ
0472nobodyさん2008/10/26(日) 07:55:28ID:???
1と2同時進行とか無理かなぁ かなぁ
0473nobodyさん2008/10/26(日) 11:49:16ID:???
PHP4ってIE並に悪だよな
0474nobodyさん2008/10/26(日) 12:14:59ID:???
また頭悪そうな奴が来た
0475nobodyさん2008/10/26(日) 20:28:30ID:???
RC3 で $html->input('Model/field'); が使えなくなって
$html->input('Model.field'); だけになったんだな。
最初気づかなくて焦ったぜ。
0476nobodyさん2008/10/28(火) 00:36:30ID:???
これからCakePHPをデファクトスタンダードにしていくためには、
CakePHPで作られているCMSを有名にするのが早いのだろうか。
XOOPSレベルのCMS作って、有名どころの拡張モジュールを移植しまくれば。。。
0477nobodyさん2008/10/28(火) 00:52:39ID:???
自分用のCMSっぽいものをつくっているけど、
表から見える所はいいんだけど、ただひたすら管理画面を作らなきゃならないのが
めんどくさくなって手抜きしちゃうんだよなー。
0478nobodyさん2008/10/28(火) 13:01:58ID:???
>>469
会社の経費でってすっげーいい会社ですね。
うらやましかー
0479nobodyさん2008/10/29(水) 10:02:34ID:???
save関数でupdateするときカラム指定しないと
idとcreated以外の全カラムが更新されるよね?
俺はカラム指定で保存する場合はこうしてるよ

更新カラムが少ないときはこうするけど

$this->data['モデルA'] = array('name'=>'うんこ');
$this->モデルA->save($this->data, false, array('name'));

更新カラムが多いときはこうすると楽だよ

$this->data['モデルA'] = array('name'=>'うんこ','mail'=>'unko@unko.com');
$this->モデルA->save($this->data, false, array_keys($this->data['モデルA']));


0480nobodyさん2008/10/29(水) 10:09:11ID:???
>>453
php初心者だと思うけど
なんか間違ってると思うよ。俺は
var $useTable = false;
でいけてるよ
0481nobodyさん2008/10/29(水) 10:12:11ID:???
IDE環境だけどCakePHP対応して欲しいと思うなら
eclipseで自分にあったプラグイン作ればいいよ
これほど自分にあったIDE環境はないよ
0482nobodyさん2008/10/29(水) 15:09:41ID:???
ページング処理をしたく、
controllerに、$this-set('users',$this->paginate()); と書いたのですが、
Fatal error: Call to undefined method TasksController::paginate()
と、コントローラでエラーが出ます。

こうした場合、どこを調べれば良いでしょうか?
0483nobodyさん2008/10/29(水) 15:23:33ID:???
>>482
○ $this-set
× $this->set
ここらへん?
04844822008/10/29(水) 15:32:02ID:???
>>483
cakephpの古いバージョンを使っていたせいでした; ごめんなさい
確かにそこも間違えてました;;
0485nobodyさん2008/10/29(水) 16:28:20ID:???
submitiボタンに画像を使いたいのですが、formヘルパーのsubmitではできますか?
それともhtmlヘルパーのimageで工夫すればよいのでしょうか?
0486nobodyさん2008/10/29(水) 17:50:53ID:???
>>485
submitのオプション又はsubmitImageで出来ますがマニュアルぐらいは読んどこう。
0487nobodyさん2008/10/29(水) 18:45:53ID:???
>>486
謝謝
googleで調べまくっていたのですがなかったのですがマニュアルにありましたか。
もっとじっくり読めばよかったです。
0488nobodyさん2008/10/29(水) 19:27:11ID:???
なんか文字小さくなっていたり、例が少ないのも一部あるけど
標準ヘルパー系はマニュアルにちゃんと書いてある
0489nobodyさん2008/10/30(木) 20:56:23ID:???
何で1.2の日本語マニュアル
http://book.cakephp.org/ja/
は、深い階層を開いていくと、右側が切れて
table of contentsが見えなくなるんだろう…
IEでもFirefoxでもいっしょ。
0490nobodyさん2008/10/30(木) 21:17:18ID:???
>>489
特定のページのみ、右カラムのメニューになぜかまたヘッダー部分が出力されているから。
アプリのバグ。
0491nobodyさん2008/10/30(木) 22:14:20ID:???
>>490
なるほど。バグすか。
読めなくて困るんですよね…
0492nobodyさん2008/10/31(金) 18:02:22ID:???
スレチなんだけどさー

小さな会社の優秀な技術者の採り方 第0回を開催しました
ttp://techlife.cookpad.com/2008/10/27/yu-shu-0/

この記事読んでどう思う? 特に下のあたりについて。

>入社しようと思った理由

>    * やりたいことができる
>          o 好き勝手やってよい文化がある
>          o 経験が生きる
>          o キャリアパス上重要なことが学べる
>    * 環境がいい
>          o 優秀な同僚
>          o 海外の事業所がある
>          o 女の子かわいい
>    * 会社の将来性が感じられる
>          o 世界で唯一のチャレンジを行っている
>          o 目的がはっきりしている
>    * 感じが良い
>          o 採用プロセス上 で会ったのがとても良い人
>          o 社長が面白い
>    * 縁があった
>          o 友達とか先輩とかが居た
>          o バイトしてた
0493nobodyさん2008/10/31(金) 20:21:19ID:???
>>492
スレ違い
0494nobodyさん2008/10/31(金) 20:32:17ID:???
まーまーそー言わずにさー感想聞かせてくれよ−
頼むから次は、スレ違い、とか言わないでくれよー
0495nobodyさん2008/10/31(金) 22:54:26ID:???
小学生からやり直せ
0496nobodyさん2008/11/01(土) 00:18:12ID:???
わかっててスレチ投稿したんじゃないのかよ
0497nobodyさん2008/11/01(土) 02:50:08ID:???
例えば商品レコードが

 id、カテゴリid、値引率、……

みたいになってるとして、
カテゴリid(≒PK以外)を指定して
「該当するカテゴリの値引率を一括で10%に」
みたいな更新って、
(CAKEの機能として)可能ですか?

(Model->save()は
 id指定して一件ずつ更新するしかないんだよね?)
0498nobodyさん2008/11/01(土) 08:59:38ID:???
updateAll
0499nobodyさん2008/11/01(土) 23:47:11ID:???
例えば...「顧客A,顧客B,顧客C,...と今後も顧客は増えるとして、
それぞれの顧客の取引情報をデータベースに入れるとする。
だけど、それぞれの顧客の情報を串刺しで集計する事は無い。」
という(まあ普通じゃない)状況があるとする。
CakePHPで使うデータベースとしてSQLiteを使って、
SQLiteとかならデータベース1つ=1ファイルなので、
それぞれの顧客ごとにデータベースを分けて保存する事って、
できますか?つまり、動的に接続するデータベースを増やせるか?
って事なんですが。

本来なら、MySQLでもなんでも、一つのデータベースに入れて、
SQLのWHEREで抽出すれば済むじゃん、って言われそうだけど。
組み立てる条件が増えるとミスが増えそうなんで。

データベースを使わず、1顧客につき1つのテキストファイルに
入れるって案も有るんだけど。テキストファイルよりは、
一応SQLiteでもデータベースに入れた方が楽かな、と思ったので。
0500nobodyさん2008/11/02(日) 00:12:07ID:???
CakePHPを使わない場合のやり方は分かるの?
0501nobodyさん2008/11/02(日) 00:53:13ID:???
PHP5限定&SQLite決め打ちなら、
function db($kokyaku){
sqlite_open($kokyaku);
...
}
ってするだけと思ってるんだけど。
0502nobodyさん2008/11/02(日) 06:29:06ID:???
>>499
それはすでにデータベースとは呼べない気がする。
0503nobodyさん2008/11/02(日) 10:58:34ID:???
普通じゃないのは認める。
でも、顧客一人一人のデータに関しては、
データベースって言えると思う。

例えば、顧客AのデータをノートPCに
移して持ち出したりする時に、
データベース全体を持ち出すのは危険だし、
その度にいちいちDUMPするのも無駄が多い
(と思う)

そこで、(例えば)SQLiteなら、その顧客の
データベースのファイルだけを持ち出すのが
簡単かな、と。思ったわけですが。
■ このスレッドは過去ログ倉庫に格納されています