トップページ⇒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/
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渡すと全部拾ってくるのはどういう理屈?
0204nobodyさん2007/05/25(金) 19:05:16ID:???
falseを渡したときの動作なんて保証されてないだろう。
string か array を渡せと書いてあるはず。
0205nobodyさん2007/05/26(土) 00:04:23ID:???
そろそろcake使ってみようかな。
0206nobodyさん2007/05/28(月) 14:07:41ID:???
超クールなヘルパーつくったんだけど、どこで発表すればいいの?
0207nobodyさん2007/05/28(月) 14:18:38ID:???
そんなことも自分で調べられないなら、
恥ずかしいので発表しないでください。
0208nobodyさん2007/05/28(月) 14:41:32ID:???
>>207
で、どこ?
0209nobodyさん2007/05/28(月) 16:21:28ID:???
1ch.tvとかじゃね?
0210nobodyさん2007/05/28(月) 17:13:28ID:???
>>209
書き込んできました^^v
0211nobodyさん2007/05/28(月) 17:19:52ID:???
デフォルトのセッションが一定時間たったら切れちゃうんですが、
ブラウザを閉じるまで持続させる、とかはどうやって設定するんでしょうか。
0212nobodyさん2007/05/31(木) 15:17:02ID:9EiCBHk0
ビューの中でHTMLの<head></head>の中にタグ追加することってできないかな?
たとえば、あるページにだけ使いたいjsを読み込んだり。

レイアウトに指定すると、全てのページで読み込まれるからあまりよろしくないですよね。
よろしくおねがいします。
0213nobodyさん2007/05/31(木) 15:23:36ID:???
別のレイアウトを追加して使えばいい
0214nobodyさん2007/05/31(木) 15:23:57ID:???
単にレイアウトを切替えれば良い話じゃないの。
自動的に制御したければそういうヘルパーを書いてもいい。
0215nobodyさん2007/05/31(木) 15:50:36ID:9EiCBHk0
>>213,214
なるほど。盲点でした。
ありがとうございます。

でも、1行のためにファイル1つ増やすのもなんかスマートじゃない気がするんですが、
みなさんが同じ場合でもそうしますでしょうか??アドバイスおねがいいたします。
0216nobodyさん2007/05/31(木) 15:56:27ID:???
目的と状況による。

どれぐらいの量のタグを追加するのか、
将来的にも他のページで使う可能性はないのか、など。
0217nobodyさん2007/05/31(木) 16:33:59ID:???
エレメント使えばー?
0218nobodyさん2007/05/31(木) 18:08:22ID:9EiCBHk0
>>217
具体的にどういうことですか?
0219nobodyさん2007/05/31(木) 20:23:12ID:???
>>218
いやー、具体的にと言われても…
つーか、レイアウトにエレメント埋めて、そこで条件判別すればー?って話なんだけどさー。
0220nobodyさん2007/05/31(木) 20:45:45ID:???
エレメント内にロジックを埋め込むということ?
0221nobodyさん2007/05/31(木) 22:10:36ID:???
>>220
そう。
0222nobodyさん2007/06/02(土) 08:24:46ID:???
こうしてる。
layout側の記述
<head>
<?php  
    if(isset($javascripts) && is_array($javascripts)){
        foreach($javascripts as $js){
            echo JavascriptHelper::link($js) . "\n";
        }
    }
?>
</head>

で、controller側から

$this->set('javascripts', array('prototype', 'tekitou');

って記述するとprototype.jsとtekitou.jsが読み込まれる。
0223nobodyさん2007/06/02(土) 11:18:32ID:???
なんか突然QuestHistory Felstoneが動かなくなってねぇか・・・
0224nobodyさん2007/06/02(土) 11:18:50ID:???
誤爆スマソ
0225かけphp2007/06/06(水) 11:42:57ID:i598mYRR
ども。
Cake使ってる人たちにお聞きしたいのですが、実際に使っている方にとってCakePHPって
どこまで満足して使えていると思いますか? CakePHPがあれば大抵のアプリは
簡単に構築できるようになるのかな。
0226nobodyさん2007/06/06(水) 11:46:51ID:???
HABTM以上の少し複雑な関係を扱うととたんに汚くせざるを得ない。
Paginationや認証もわざわざ自分で書く(持ってくる)必要があるから簡単とはいえない気がする。
bakeに類するものを使っても、対話式は非効率だし。
0227nobodyさん2007/06/12(火) 11:52:23ID:9MpyswiS
アソシエーションの使い方がわからん・・・
02282272007/06/12(火) 14:20:15ID:9MpyswiS
事故解決。

ところで、改行コードを改行タグに変換してくれるヘルパーってないですかね?
標準で実装しててもいい機能だと思うけどなあ
0229nobodyさん2007/06/12(火) 15:57:53ID:???
・・・nl2br知らないとかいうオチじゃないよなまさか
0230nobodyさん2007/06/12(火) 17:30:42ID:???
cakeのviewを使った場合の話だろう。
0231nobodyさん2007/06/12(火) 18:00:52ID:???
たしかHTMLヘルパー使って出力すれば勝手に変換されたと思うが
0232nobodyさん2007/06/14(木) 15:56:59ID:ZlJLpzAT
自分のつくったコントローラーを継承したいんですけど、どうやるんですか?
class ChildController extends ParentController
としても、Cannot inherit from undefined class parentcontrollerと、エラーが出てしまいます。
0233nobodyさん2007/06/14(木) 20:35:37ID:???
インクルードしてないだけでしょ
0234nobodyさん2007/06/15(金) 10:39:14ID:???
>>232
うわ、すげぇ、こんなド素人がフレームワークを使おうとしている。

cakePHPはそういうポジションなのか・・・。
0235nobodyさん2007/06/15(金) 13:08:03ID:???
最近CakePHPをいじりはじめたのですが
データベースのフィールド増やすたびに
/app/tmp/cache/models
の下のキャッシュを削除しないといかんのでしょうか?
そうしないとcakePHPは新しいフィールドを一切認識してくれません
0236nobodyさん2007/06/15(金) 14:14:52ID:???
>>235
当たり前
0237nobodyさん2007/06/15(金) 16:15:48ID:WBx+PEHj
>>235
開発中ならDEBUGを1以上にしてればいいんじゃない?
0238nobodyさん2007/06/15(金) 16:20:32ID:???
ありがとう
これのせいで2時間悩んだ
0239nobodyさん2007/06/18(月) 13:41:31ID:As+yaC2S
MySQLのDATETIME型って結局ただの文字列なの?
"2007-06-18 12:00:00"って文字列渡しても認識してくれるけど
0240nobodyさん2007/06/18(月) 14:18:11ID:???
スレ違い(下手したら板違い)じゃないか?
MySQL内で型の変換してるんだとおもうけどな。
時間順にソートできるんだから。
0241nobodyさん2007/06/18(月) 14:25:40ID:???
>>239
MySQL側でどう保存してるかと
PHP側でどう扱っているかは別の話。
0242nobodyさん2007/06/18(月) 17:44:42ID:???
CakePHPって複数行削除できないのか_| ̄|○
$this->model->del(array(1,2,3,4));
複数削除するのはSQL直接叩かないとだめなのか?
02432422007/06/18(月) 17:46:37ID:???
foreach (array(1,2,3,4) as $i)
  $this->model->del($i);

アホっぽいか('A`)
■ このスレッドは過去ログ倉庫に格納されています