【PHP】フレームワーク CakePHP 4ホール目【v1.2】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2008/06/20(金) 01:24:40ID:???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/
0454nobodyさん
2008/10/11(土) 22:44:35ID:???0455nobodyさん
2008/10/13(月) 23:28:41ID:???今案件受けたらRCのCakePHPを使うんでしょうか…?
それとも1.1ですか?
0456nobodyさん
2008/10/15(水) 13:59:49ID:???先日納品した案件は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:???<?php echo $this->requestAction('/users/login', array('return')); ?>と書くと
users/loginにリダイレクトしちゃうのは仕様?
0459nobodyさん
2008/10/21(火) 22:18:09ID:???0460nobodyさん
2008/10/23(木) 05:04:43ID:???PHPのIDE何使っている?Eclipse?
俺、どうもEclipseのごちゃごちゃ感になじめず
今までテキストエディタを使っていた。
Java以外はなんか怪しいにおいがするし。
で、NetBeans 6.5が標準でPHPサポートするではないか。
今RCがでてる。一般的なIDE的機能はサポートされているだろうから
俺が興味あるのがリファクタリング機能。
デモをざっと見たところ変数名の置換とかには対応しているのかな?
ためしてみようとおもう。うまくCakePHPと連携できるかな?
もしすでにやっている人がいたら、なんか教えてちょうだい。
0461nobodyさん
2008/10/23(木) 07:37:12ID:???0463nobodyさん
2008/10/23(木) 12:18:23ID:???デモにあった名前変更は、よく分からないけど
カーソル行があるスコープ名前を一括で変えるだけ?
遠くにあるコードまでは変わらないようだ。残念。
まあこんなもんか。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.2RC4 もうすぐ出る
1.2Stable バグが0件になったら出る
1.3 機能追加等
2 PHP5のみサポートに変更
3 PHP6対応?
0471nobodyさん
2008/10/26(日) 00:22:27ID:???0472nobodyさん
2008/10/26(日) 07:55:28ID:???0473nobodyさん
2008/10/26(日) 11:49:16ID:???0474nobodyさん
2008/10/26(日) 12:14:59ID:???0475nobodyさん
2008/10/26(日) 20:28:30ID:???$html->input('Model.field'); だけになったんだな。
最初気づかなくて焦ったぜ。
0476nobodyさん
2008/10/28(火) 00:36:30ID:???CakePHPで作られているCMSを有名にするのが早いのだろうか。
XOOPSレベルのCMS作って、有名どころの拡張モジュールを移植しまくれば。。。
0477nobodyさん
2008/10/28(火) 00:52:39ID:???表から見える所はいいんだけど、ただひたすら管理画面を作らなきゃならないのが
めんどくさくなって手抜きしちゃうんだよなー。
0479nobodyさん
2008/10/29(水) 10:02:34ID:???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:???php初心者だと思うけど
なんか間違ってると思うよ。俺は
var $useTable = false;
でいけてるよ
0481nobodyさん
2008/10/29(水) 10:12:11ID:???eclipseで自分にあったプラグイン作ればいいよ
これほど自分にあったIDE環境はないよ
0482nobodyさん
2008/10/29(水) 15:09:41ID:???controllerに、$this-set('users',$this->paginate()); と書いたのですが、
Fatal error: Call to undefined method TasksController::paginate()
と、コントローラでエラーが出ます。
こうした場合、どこを調べれば良いでしょうか?
0485nobodyさん
2008/10/29(水) 16:28:20ID:???それともhtmlヘルパーのimageで工夫すればよいのでしょうか?
0487nobodyさん
2008/10/29(水) 18:45:53ID:???謝謝
googleで調べまくっていたのですがなかったのですがマニュアルにありましたか。
もっとじっくり読めばよかったです。
0488nobodyさん
2008/10/29(水) 19:27:11ID:???標準ヘルパー系はマニュアルにちゃんと書いてある
0489nobodyさん
2008/10/30(木) 20:56:23ID:???http://book.cakephp.org/ja/
は、深い階層を開いていくと、右側が切れて
table of contentsが見えなくなるんだろう…
IEでもFirefoxでもいっしょ。
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 バイトしてた
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:???0499nobodyさん
2008/11/01(土) 23:47:11ID:???それぞれの顧客の取引情報をデータベースに入れるとする。
だけど、それぞれの顧客の情報を串刺しで集計する事は無い。」
という(まあ普通じゃない)状況があるとする。
CakePHPで使うデータベースとしてSQLiteを使って、
SQLiteとかならデータベース1つ=1ファイルなので、
それぞれの顧客ごとにデータベースを分けて保存する事って、
できますか?つまり、動的に接続するデータベースを増やせるか?
って事なんですが。
本来なら、MySQLでもなんでも、一つのデータベースに入れて、
SQLのWHEREで抽出すれば済むじゃん、って言われそうだけど。
組み立てる条件が増えるとミスが増えそうなんで。
データベースを使わず、1顧客につき1つのテキストファイルに
入れるって案も有るんだけど。テキストファイルよりは、
一応SQLiteでもデータベースに入れた方が楽かな、と思ったので。
0500nobodyさん
2008/11/02(日) 00:12:07ID:???0501nobodyさん
2008/11/02(日) 00:53:13ID:???function db($kokyaku){
sqlite_open($kokyaku);
...
}
ってするだけと思ってるんだけど。
0503nobodyさん
2008/11/02(日) 10:58:34ID:???でも、顧客一人一人のデータに関しては、
データベースって言えると思う。
例えば、顧客AのデータをノートPCに
移して持ち出したりする時に、
データベース全体を持ち出すのは危険だし、
その度にいちいちDUMPするのも無駄が多い
(と思う)
そこで、(例えば)SQLiteなら、その顧客の
データベースのファイルだけを持ち出すのが
簡単かな、と。思ったわけですが。
0504nobodyさん
2008/11/02(日) 11:04:28ID:???>組み立てる条件が増えるとミスが増えそうなんで。
ここら辺から考え方がおかしくなっている気がするぞw
串刺しの集計はしなくても、IDをキーに単純抽出する為の場所という認識で
一つの顧客テーブルを使えばいいんじゃないのか?
0505nobodyさん
2008/11/02(日) 12:25:01ID:???> SQLのWHEREで抽出すれば済むじゃん、って言われそうだけど。
> 組み立てる条件が増えるとミスが増えそうなんで。
この理由でデータベース分けるくらいなら、RDB使わないほうがいいんじゃ‥
データベース単位じゃないけど、テーブル自動生成するやつならつくったことある
0506497
2008/11/02(日) 12:31:59ID:???ありがと
1.2で追加されたのね……
手元の資料になかったお ><
0508nobodyさん
2008/11/02(日) 15:11:53ID:???必要なデータをクラスにまとめて
保存・更新の際にシリアラズしてDBにぶちこめばいんじゃね
0509nobodyさん
2008/11/02(日) 17:41:13ID:???「顧客」って書くから漠然としていて分かりづらいんだな・・・
「辞典」って読み替えてみて。「顧客A」は「国語辞典」、「顧客B」は「カタカナ語辞典」
と、目的毎に辞典の種類は増えて行く。(辞書の場合、串刺し検索できると便利だけど)
全部のデータを一まとめにしたくない。辞書の種類毎にデータベースを分類したいんです。
で、その分類は、例えば「萌え用語辞書」が追加されるとか、どんどん増やして行きたい。
その度に、別のデータベースに分けたい。一つのデータベース、例えば「国語辞典」の中では、
もちろん検索できないと困る。ただし、用語の説明の中身は、用語によって様々だから、
シリアライズして放り込むつもり。
そうすると、SQLiteでデータベースを分けて作ると、1つのファイルがそのまま1冊の
辞書そのものになる。←今回は、ここが重要
これなら「カタカナ語辞書」のファイルを友達に渡しても、「萌え用語辞書」が雑じってる
ことは無いので安心。(例えば、ね)
そういう、いわば辞書編集システムを、CakePHPのデータベースを扱う部分の工夫で
なんとか簡単に作れないかなー、というところなんです。
CakePHPでも複数のデータベースは使えるけど、あらかじめ'database.php'に
書き込んだ物に限られる。これが、動的に増やしたり変更する方法があれば有り難い。
0510nobodyさん
2008/11/02(日) 17:49:09ID:???0512nobodyさん
2008/11/02(日) 21:47:23ID:???0513名無し募集中。。。
2008/11/03(月) 23:33:04ID:8PMDTqib左上に実行中のメソッド名が表示されちゃう(HTMLの最初にメソッド名が出力されている)
んだけどなぜなんだろうか。
0514nobodyさん
2008/11/03(月) 23:35:05ID:???出ているのはメソッド名じゃなくてview名らしい。
0515nobodyさん
2008/11/03(月) 23:40:04ID:???拾ってきたbeforeRender()のサンプルの中に
echo $this->action;があったよ死のう。
0516nobodyさん
2008/11/04(火) 00:02:52ID:???0518nobodyさん
2008/11/04(火) 12:59:24ID:???0519nobodyさん
2008/11/06(木) 21:23:56ID:???bakeについてですが、これはCakeの配置のされ方が、下のページの
http://book.cakephp.org/view/32/Installation
Developmentであることを前提にファイルを生成するもので、Production や
Advanced の配置では使うことができない(現実的でない)という理解でよろし
いでしょうか?
0520nobodyさん
2008/11/06(木) 21:30:59ID:???もし、上の理解が間違っていて、Advancedの配置でもBakeが使えるのだとした
ら、Advancedの一例として、Cake のシステムは共通だが、作成するWEBアプリ
ケーションが同一サーバに複数あって、Cakeの同一のシステムを共有している
場合、特定のWebアプリをどうやってコード生成のターゲットとするか、その指
定方法を教えていただけたら、と思います。
0521nobodyさん
2008/11/06(木) 21:38:37ID:???0522nobodyさん
2008/11/06(木) 21:39:33ID:???http://manual.cakephp.org/ja/view/32/%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB
駄目だとしても他の場所に作って移動すればいいのではないかと思うんだけど
それじゃ駄目なのかな?
まあ俺が>>513と同一人物と言うことは内緒だが
0523nobodyさん
2008/11/06(木) 22:00:26ID:???すみません、ちょっとおっしゃる内容が分かりません。
少し詳しく質問し直させてください。
例えば、こういう配置だとします。
cake
/usr/lib/cake(個々のユーザは読み取り権限しか持たない)
app
/home/user01/app
/home/user02/app
...
webroot
/home/user01/htdocs
/home/user02/htdocs
...
webrootには各人ごとにindex.phpを置いて、cakeとappの位置を指定します。
この場合、/usr/lib/cake/console に個々のユーザが移動して、./cake bake
を実行した場合、例えばModelのファイルはどこに生成されるのでしょうか?
おそらく /usr/lib/cake/app/models だと思うのですが、ここには一般ユーザ
の書き込み権限がないので、動作しません。
個々のユーザごとに、/home/user0X/app/modelsに出力するよう bakeは指定で
きるのでしょうか?
0524nobodyさん
2008/11/06(木) 22:01:50ID:???日本語のほうはURLが長いのでわずらわしいかと思いまして。
ひとつ前のレスに書きましたが、書き込み権限がない場合を想定しています。
0525nobodyさん
2008/11/06(木) 22:20:55ID:???質問させていただいたのに、非礼をお詫びいたします。
0526nobodyさん
2008/11/07(金) 01:23:09ID:???Bakeでapp一式を生成する話かと思ってたが、modelとかを作る場合の話ね。
cake bake -app <appフルパス>で指定できる
または、
/home/user01/appをカレントディレクトリとして、cake bakeを実行すればよい。
但し、/usr/lib/cake/consoleにはパスを通しておくこと。(ちと気持ち悪いが)
0527nobodyさん
2008/11/07(金) 10:47:32ID:???ありがとうございます!なるほど、コマンドラインオプションで指定するのか。
それにしてもbakeのドキュメントって見つからないと思ったら、
./cake bake help
こうすれば説明が読めることにやっと気づきました。
この説明以外にドキュメントがないというのが何ともですが。
後はソース読むしかないか。Railsもそうだったけど。
0528nobodyさん
2008/11/07(金) 13:57:45ID:???MySQLに画像は保存できるのですが、その画像をselectしてViewで表示するにはどうやればいいですか?
外部のPHPに記述して読み出すようにはあるのですが、cakePHPのViewから同様のことができません。
0529nobodyさん
2008/11/07(金) 14:03:58ID:???何をやって、どう駄目だったのか書いたほうがいい。
外部のPHPなら、Cakeのviewで普通に画像として呼び出せばいいんじゃないの?
0530nobodyさん
2008/11/07(金) 14:13:15ID:???$this->data['Event']['imagedata']にイメージのバイナリがセットされています。
echo $html->image($form->value('Event.imagedata'));
で表示させるとバイナリのまま表示されます。
それでimage.phpを作成して、header("Content-type:image/gif");を指定して
外部のPHPファイルで画像のバイナリを表示させようとしたのですが、
ビュー以下において単純な<img src="image.php">では呼び出せずにいます。
webroot以下やコントローラー以下にも配置したのですが同じでした。
ファイルの置き場所が悪いのでしょうか?
それとも簡単に出来る方法があればよろしくお願いします。
0531nobodyさん
2008/11/07(金) 14:51:26ID:???イメージのバイナリを画像表示用のviewに渡して、viewでheader吐けばいけそうだけど。
MVCの設計としてどうかは知らん
最終的には画像表示用のコントローラ作ればいいんじゃないかな
0532nobodyさん
2008/11/07(金) 14:55:58ID:???ビューでheaderをはきたいのですが他にもHTMLがありますので、画像の部分だけ「Content-type:image/gif」とかを指定したいのです・・・
0534nobodyさん
2008/11/07(金) 15:44:18ID:???メディアビューは初めて聞きます。
サンプルはバイナリファイルをダウンロードさせるようになっていますね。
画像の場合はどのようにすればいいのかまだ分かりません。
例えばMySQLから取得した画像のバイナリーデータを
SNSのプロフィール画像のように表示させたいのです。。。
0535nobodyさん
2008/11/07(金) 16:06:14ID:???>>532
そもそもHTMLと画像は別ファイルだよ。
外部のPHPファイルで画像表示に成功しているなら、viewに直接imgタグ書けばいいだけかと。
0536nobodyさん
2008/11/07(金) 16:12:29ID:???0537nobodyさん
2008/11/07(金) 16:12:54ID:???0538nobodyさん
2008/11/07(金) 16:37:20ID:???2.MySQLから取得した画像のバイナリをイメージで表示
3.HTMLを表示
上みたいな感じなので、2のパートだけをContent-type:image/jpegにしたいのですが
エレメントとかで分けてもheader("Content-type:image/jpeg");を記載したら
URLだけしか表示されないのです。
そのままだとバイナリデータが表示されます。。。
おとなしく画像をアップしてパス指定で管理するしかないのですかね。。。
0539nobodyさん
2008/11/07(金) 16:47:27ID:???http://q.hatena.ne.jp/1141838059
0541nobodyさん
2008/11/07(金) 17:40:49ID:???0543nobodyさん
2008/11/07(金) 18:13:58ID:???ご回答ありがとうございます。なかなか難しいのですね。
cakePHPでSNSのプロフィール画像を表示させたいイメージなのです。
ファイルをアップしてリンクのテキストで対応するのは出来るのですが、
バイナリーで保存してやりたいということです。
0545nobodyさん
2008/11/07(金) 19:05:29ID:???つまんねぇレスすんなハゲ
これは使えないかな?
サムネイルコンポーネント
http://www.hideblog.net/nikkis/show/16
もっとスマートにできるなら俺も知りたい。
0546nobodyさん
2008/11/07(金) 20:24:31ID:???文字データなら出来たけど。
0547nobodyさん
2008/11/07(金) 21:14:59ID:???0548nobodyさん
2008/11/07(金) 22:25:45ID:???コントローラのファイルを、種類によっていくつかのサブディレクトリに分け
て配置することは出来るのでしょうか?
app/controllers/hoge/hoge0_controller.php
app/controllers/hoge/hoge1_controller.php
app/controllers/fuga/fuga0_controller.php
app/controllers/fuga/fuga1_controller.php
このように複数のサブディレクトリを作り、その中にコントローラを分けて納
めるようなイメージです。
また出来るとしたら、それらのコントローラにはどのようなURLでアクセスでき
るのでしょうか?
0549nobodyさん
2008/11/07(金) 22:48:44ID:???http://book.cakephp.org/ja/view/48/CakePHP%E3%81%AE%E3%83%96%E3%83%BC%E3%83%88%E3%82%B9%E3%83%88%E3%83%A9%E3%83%83%E3%83%97
0550nobodyさん
2008/11/07(金) 23:08:49ID:???なるほど、ありがとうございます。bootstrap.phpの$controllerPathsですか。
CakePHPでコントローラーを複数のディレクトリに整理する方法 - yandodの日記
http://d.hatena.ne.jp/yandod/20080510/1210416583
> 分散したディレクトリ内でファイル名やクラス名が衝突すると面倒な事になる
> と思われますので接頭語を付けるなどして管理するのが良いかもしれません。
うーん。コントローラの名前空間は共通なのか。
URLのパス指定で、各ディレクトリを呼び分けるとか出来ないでしょうか?
0551nobodyさん
2008/11/07(金) 23:29:48ID:???0552nobodyさん
2008/11/07(金) 23:32:23ID:???そもそもmysqlは画像データを格納するために作っていないから
画像はフォルダに入れて管理した方がいいと
mysql作者が語ってるのに。
そんな自分もかけだしのときはmysqlに画像データ入れてました
管理は楽だけどね。かなりの負荷がかかる。
Bakeとか使う人も素人くさいと思う。
■ このスレッドは過去ログ倉庫に格納されています