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

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2009/03/09(月) 10:55:37ID:3PTy4GqZ
CakePHPは、Ruby on Railsの概念の多くを取り入れた、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークです。

※sage推奨
※日本語マニュアルURLを貼るときは、http://book.cakephp.org/ja/view/1/ のようにしましょう(末尾のエンコードされたタイトル部分は不要)

■本家
http://www.cakephp.org/
APIドキュメント
http://api.cakephp.org/
the Bakery
http://bakery.cakephp.org/
CheatSheet (PDF)
http://cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf

■日本語公式
http://cakephp.jp/
フォーラム
http://cakephp.jp/modules/newbb/
cookbook(マニュアル)
http://book.cakephp.org/ja
0209nobodyさん2009/04/13(月) 07:04:51ID:???
>>204
202じゃないけどログイン処理は自前でやってるよ。
他は全てライブラリやコンポーネント使うけど、authコンポーネントは苦手。
0210nobodyさん2009/04/13(月) 07:36:02ID:???
FW使うのが目的になってるよなw
0211nobodyさん2009/04/13(月) 07:47:40ID:???
AuthもFWだけどね
MVCの仕組みだけと言うべきかな

Authは最新版なら有用だと思う
というか自前でセキュリティホールの無い認証機構作るとかめんどくさすぎるから
0212nobodyさん2009/04/13(月) 09:32:33ID:???
>>210
それは誰に対していってるの?
全部Cakeの機能で賄おうとしてる人に対して?

私は >>211 に同意です。
0213nobodyさん2009/04/13(月) 12:58:49ID:???
>>209

> authコンポーネントは苦手。

その気持ち分かります。
以前、Authコンポを使って、グループ毎にログイン後のアクセス画面を変えるというのを作ったけど、
loginRedirectプロパティを書き換えたページ振り分けが上手くいかなくて苦しんだ。
※最初のユーザをログアウトして、別のユーザでログインすると何故か最初のユーザの画面が表示されてしまう...

結局、loginRedirectのプロパティ値は、Sessionに含まれ続けるという事を知って、
ログアウト毎にセッションをクリアすることで上手くいくと思ったのだが、上手く行かず...
結局、autoRedirectしないようにして、グループ情報を確認後に改めてリダイレクトするようにして対応した...orz

0214nobodyさん2009/04/13(月) 13:49:00ID:???
皆さんはCakePHPのパフォーマンスをどんな具合で上げていきますか。
特にパラメータによって頻繁に情報が変わる検索ページとか。
0215nobodyさん2009/04/13(月) 16:02:37ID:???
>>201
fieldsでグループ化のカラムを書くと、なぜかidも出そうとしてSQLエラーになった。
$params = array(
'fields' => array(
'type',
'COUNT(type) AS "Post__count"',
),
'group' => array('type'),
);

しょうがないからquery使った。
0216nobodyさん2009/04/13(月) 18:04:13ID:wqehV7U5
CakePHPをインストールしたんだが、何故かインストール時に
表示されるページにCSSが適用されない。
Apacheのドキュメントルート/cake/ 以下にインストールしたんだが、
ここにアクセスするとHTMLのCSSの読み込み部分が
href="/cake/css/cake.generic.css"
と、なって、
app/webroot/css/cake.generic.css
にも
cake/console/libs/templates/skel/webroot/css/cake.generic.css
にもならない。
baseUrlという変数の中身が鍵らしいというところまでは
分かったんだが、それ以上が何とも。
誰かご教示頼む。
02172162009/04/13(月) 18:54:34ID:???
とりあえずほっといてチュートリアル進めているうちに自己解決しました。
.htaccessがコピーされてないだけだった('A`)
0218nobodyさん2009/04/13(月) 22:52:24ID:???
>>210
わかる。フレームワークの機能をどうしても利用しようとして、少しのことでもこだわり過ぎて
逆に効率が悪くなるという。

>>213
気持ちわかってくれてうれしい。同じ人もいたんだ。絶対否定されると思ったけど^^

>>214
自分は3つくらいのサイトをcakephpで作ったけど、ひたすらプラグインにまとめてデザイン無しのページを作り、
それを元にして新たなサイトを構築していってる。
プラグインにまとめまくると普通のコントローラーやビューがごちゃつかないのでいいよ。
特にユーザーログイン、画像アップデート、プロフィールアップデートなどをプラグイン化しておくと、
新たなサイト作ったときもその機能を作らなくても良いので楽。

以前このスレで 慣れるとビヘイビアが多くなる って人がいたけど、今は自分もビヘイビアを多く使うようになってきた。
0219nobodyさん2009/04/13(月) 23:01:54ID:???
>>218
プラグイン多用しているということで聞きたいのですが、
たとえばユーザー管理の仕組みをUserプラグインにまとめると、
モデル名にプラグイン名がついて、UserUserモデルになってしまって不恰好なのですが、
どうされてますか?
他にもCommentプラグインのCommentCommentモデルなど・・・
とにかくモデル名が長くなってしまって困っているんですが・・・

あと、そのCake製のサイト見てみたいです。
・・・2chで晒すのはアレですかね?
0220nobodyさん2009/04/14(火) 09:12:22ID:???
>>219
218じゃないけど、Userみたいなのはプラグイン名にしない。
もうちょっとまとめたもの、例えばMeiboみたいなのを付ける。
0221nobodyさん2009/04/14(火) 12:23:38ID:???
CakePHPを始めたばかりです。
CakePHP 1.2.2.8120とsqlite3を使っています。
インストールには成功したのですが、チュートリアルを
http://book.cakephp.org/ja/view/330/
まで進めた後にインストールの確認ページを見ると、
Cake is NOT able to connect to the database.
というエラーがでてしまい、困っています。
/posts/index を見ても、
Error: Database table posts for model Post was not found.
と出てしまいます。
database.phpの設定は以下の通りです。
var $default = array(
         'driver' => 'sqlite'
         'connect' => 'sqlite_open',
         'persistent' => false,
         'host' => 'localhost',
         'login' => '',
         'password' => '',
         'database' => 'cake.db',
         'prefix' => '',
         'encoding' => 'utf8'
     );
どうかよろしくお願いします。
0222nobodyさん2009/04/14(火) 12:43:42ID:???
>>221

hostは空でいいよ
つまり、

'host' => '',
0223nobodyさん2009/04/14(火) 18:56:14ID:???
>>219
ug プラグインにしてる。で、あとはroutes.php でルーティング。
これだとパスとか関係ないのでイイと思う。逆にルーティングを使わないと
パス名長すぎてかっこわるくなるね。
02242212009/04/14(火) 21:27:15ID:???
>>222
hostsを空にしてみてもダメでした。
dbファイルが無いときはちゃんとdbファイルが作られて、
インストール確認ページに、
Cake is able to connect to the database.
と表示されるのですが、
このdbファイルにテーブルを手動で作ってやると、
Cake is NOT able to connect to the database.
に変わってしまいます。
ユーザはapacheのユーザですし、試しにdbファイルを
777にしてみてもダメでした。
どうかよろしくお願いします。
0225nobodyさん2009/04/14(火) 23:39:51ID:b4g3iQJt
つか、sqlite3ってまだ未サポートじゃなかったのかと思ってたがどうなんだ
02262212009/04/15(水) 12:57:21ID:???
>>225
とりあえず去年の2月の時期で未サポートという情報は見つけました。
手を抜かずにmysqlを使うことにします。
お騒がせいたしました。
0227nobodyさん2009/04/15(水) 13:53:06ID:???
http://cakephp.seesaa.net/article/117498131.html
0228nobodyさん2009/04/15(水) 15:27:53ID:???
>>227
機能をPHPモジュールで実装して
PHPのコンパイルオプションで選ぶようにするとか

あるいはyumのパッケージをAPIごとに分けて欲しいやつだけ入れるとか

そういう方法で対処するのが一番楽で高機能だと思うがな
0229nobodyさん2009/04/16(木) 14:44:00ID:???
もういや、以前NetBeansへのCakePHPフレームワーク対応の
話があったと思うんだけど、どうなったの?
0230nobodyさん2009/04/16(木) 21:11:24ID:???
もういや!
0231nobodyさん2009/04/16(木) 23:13:26ID:???
saveallしたあとで、バリデートのエラーを拾えないんですが
やり方を知っている方がいたら教えてください?

コントロール内で

$this -> Model -> saveall($data,array('validate' => 'first');

とした後、

$error = $this -> Model -> invalidFields();

としても、バリデートがエラーになっても$errorが空のままです。
saveにすると問題ないのですが、何故なんでしょうか?
saveallでバリデートエラーを拾いたい場合は、やっぱり関連する
各モデルごとにバリデートを繰り返しあてるしかないんでしょうか?
0232nobodyさん2009/04/17(金) 15:00:20ID:???
もういややわ。
0233nobodyさん2009/04/20(月) 22:02:02ID:???
>>221
こんなのがあったよ。

CakePHP1.2 で sqlite3 を使用するには
ttp://blog1.atcms.jp/chuno/index.php?UID=1236462644
0234nobodyさん2009/04/21(火) 15:14:47ID:???
実践本買ったけど、bakeばっかり使っててわかりづらい。
ちょっと前の勉強会だとbake使ってる人はほとんどいなかったのに、最近は違うのか?
0235nobodyさん2009/04/21(火) 15:18:56ID:???
bakeの何が分かり辛いんだ
というかモデル追加するたびに手書きでコントローラとか書いてたのか?
0236nobodyさん2009/04/21(火) 15:24:47ID:???
普段と違う開発手法だから慣れない感じ。
もちろん読みこめば何をやってるのかわかるんだけどさ。
自分は基本的にコードは手書きだよ。
0237nobodyさん2009/04/21(火) 15:26:55ID:???
基本的な使い方知るくらい5分かかるかどうかレベルだろ
0238nobodyさん2009/04/21(火) 15:31:48ID:???
いや、だからbakeで何をやってるかはわかるって。
ただ、普段の開発手法と違うから読みにくいというだけで。

普段Linux環境だからWindows環境で書かれてるのがわかりづらいとか、
そういうくらいのレベルの話だよ。
0239nobodyさん2009/04/21(火) 16:07:29ID:???
bakeにmvcひとつひとつ選択しないで
ぜんぶdefaultで、とにかく作成しちゃうモードがあればいいなとおもう
0240nobodyさん2009/04/21(火) 16:16:48ID:???
あるじゃん
0241nobodyさん2009/04/21(火) 17:49:53ID:JXH2p/YI
実践本、俺はbake使い過ぎてわからんというよりは、
scaffoldに固執しすぎてバッドハック的な事をしてるのが気になった。
cakeの仕様の変わりっぷりを考えると、後々まで使える手法じゃない可能性が高いし
0242nobodyさん2009/04/21(火) 17:51:19ID:???
Cakeのbakeは使えるがscaffoldは使えないな
0243nobodyさん2009/04/21(火) 18:53:24ID:???
scaffoldって初期開発時のテスト用で本番にはあまり使わないイメージがあるんだけど。
という、scaffoldのままでいいコントローラってあまりないよね。
0244nobodyさん2009/04/21(火) 21:03:12ID:???
App::importに対してunimport的なものってあるの?

そもそもimportで読み込んだコンポーネントってstartup()とか動作するのかな?
単にimportを呼び出したスコープ内でメソッドが使えるだけ?
0245nobodyさん2009/04/21(火) 21:19:09ID:???
コントローラからの読み込み以外では適宜startup呼ばないとだめなんじゃない?
0246nobodyさん2009/04/21(火) 21:38:59ID:???
そのようだった。
initialize()すら呼ばれないね。

コンポーネント内でApp::importした場合って、
initialize(&$controller)の$controllerにセットされないよね?
コンポーネント内ではimport出来ないの?
0247nobodyさん2009/04/21(火) 21:45:39ID:???
コントローラのcomponentsに登録されるのかと思ったけどただ単にPHP的にクラスを読み込んでるだけか
0248nobodyさん2009/04/21(火) 23:44:48ID:???
実践本3,150円(税込)が
Amazonで2,740円(=2,400+340)の中古本が出たので即購入。ラッキー
(会社で新品書籍を購入すると10%offという人多いのかなあ?うらやましい)
0249nobodyさん2009/04/22(水) 00:27:07ID:???
会社ってか昔の客先は組合の購買で買うと10%OFFだったな
協力会社の人も含めて
0250nobodyさん2009/04/22(水) 04:16:17ID:???
>>248
10%オフって・・・。
会社通して仕事の本買えば会社は全額経費になるのにひどい話だな。

俺が以前いた会社は全額経費で落としてくれた。
0251nobodyさん2009/04/22(水) 04:28:09ID:IoF1Kk6A
経費で買うとタダになるとでも思ってるのか?w
本当にこういう社会人がいたのか
ショックだ。
0252nobodyさん2009/04/22(水) 08:35:18ID:???
>>251
社会人というか経営者だけど。
別にタダになるとは言ってないだろ。
もう少し税金勉強してからいってくれよ。
0253nobodyさん2009/04/22(水) 09:57:22ID:???
>>250
10%は仕事で使わない書籍の話だが
0254nobodyさん2009/04/22(水) 15:40:08ID:???
いつかは転職するだろうという思いがあるから、
会社の本ではなく、自分の本にしたい。
0255nobodyさん2009/04/22(水) 20:15:15ID:???
仕事書籍を経費で購入しても10%offだし、
個人で給与天引きで購入しても10%offだよ。
(書籍は何でもOK、子供の参考書でもOK)
書籍はどちらも職場に届く。
0256nobodyさん2009/04/22(水) 20:43:15ID:???
ジャンプとかサンデーも10%OFFだったな
注文すれば多分エロ本でも10%OFFだと思う
0257nobodyさん2009/04/22(水) 20:57:55ID:???
以後ここはamazonでどこまで10%オフできるか相談し合う
サラリーマンのスレッドとなります。
0258nobodyさん2009/04/22(水) 21:15:22ID:???
サラリーマンはamazon使わなくても10%offなので
0259nobodyさん2009/04/23(木) 07:10:35ID:???
俺の会社では10%OFFで買えねーぞ。
また大企業だけの特権か?
0260nobodyさん2009/04/23(木) 13:20:27ID:???
うちは自腹…。
0261nobodyさん2009/04/23(木) 14:49:24ID:???
がんばれ>>260w
0262nobodyさん2009/04/25(土) 12:06:35ID:???
初歩的なことですまないが
debug=0の時にエラー出さないけど
ファイルにはエラーを出力するってどうやんの?
0263nobodyさん2009/04/25(土) 12:14:00ID:???
>>262
http://book.cakephp.org/ja/complete/157/
ログの記録
0264nobodyさん2009/04/25(土) 12:18:12ID:???
>>263
自分でエラーログ書けってこと?
0265nobodyさん2009/04/25(土) 17:26:55ID:???
セッション機能について質問です。
デフォルトでSession.startをfalseにして、
コントローラーによってtrueにしたりDBか/tmp保存に
切り分けたいのですが、何か良い方法はありますか?
0266nobodyさん2009/04/26(日) 00:51:40ID:???
frameタグを使って2分割した場合、
frame src に同じコントローラーの別々のアクションを指定したいんですが、
どう書けば良いんでしょうか?
0267nobodyさん2009/04/26(日) 10:36:52ID:???
検索結果のpaginationで、検索引数を持ち回るときってsession使うのが普通なの?
みんなはどうしてる?
0268nobodyさん2009/04/26(日) 11:11:38ID:???
>>267
ググってる
0269nobodyさん2009/04/26(日) 14:42:26ID:???
>>267
それでいいんじゃねーの
0270nobodyさん2009/04/26(日) 15:58:15ID:???
そういや、以前NetBeansへのCakePHPフレームワーク対応の
話があったと思うんだけど、どうなったの?
0271nobodyさん2009/04/26(日) 17:48:54ID:???
Sunがあれだからな。
果たしてOracleがやってくれるかどうか・・・。
0272nobodyさん2009/04/26(日) 22:30:08ID:???
セレクトタグで都道府県を選択したいんだけど、
ヘルパーに追加してる人とかっている?
0273nobodyさん2009/04/27(月) 01:33:20ID:???
array('北海道'=>'北海道', '青森'=>'青森', '岩手'=>'岩手', '宮城'=>'宮城',
'秋田'=>'秋田', '山形'=>'山形', '福島'=>'福島', '茨城'=>'茨城', '栃木'=>'栃木', '群馬'=>'群馬',
'埼玉'=>'埼玉', '千葉'=>'千葉', '東京'=>'東京', '神奈川'=>'神奈川', '新潟'=>'新潟', '富山'=>'富山',
'石川'=>'石川', '福井'=>'福井', '山梨'=>'山梨', '長野'=>'長野', '岐阜'=>'岐阜', '静岡'=>'静岡',
'愛知'=>'愛知', '三重'=>'三重', '滋賀'=>'滋賀', '京都'=>'京都', '大阪'=>'大阪', '兵庫'=>'兵庫',
'奈良'=>'奈良', '和歌山'=>'和歌山', '鳥取'=>'鳥取', '島根'=>'島根', '岡山'=>'岡山', '広島'=>'広島',
'山口'=>'山口', '徳島'=>'徳島', '香川'=>'香川', '愛媛'=>'愛媛', '高知'=>'高知', '福岡'=>'福岡',
'佐賀'=>'佐賀', '長崎'=>'長崎', '熊本'=>'熊本', '大分'=>'大分', '宮崎'=>'宮崎', '鹿児島'=>'鹿児島',
'沖縄'=>'沖縄')
0274nobodyさん2009/04/27(月) 07:10:46ID:???
お上が決めた県コード順になってるな。出来るなオヌシ
ttp://ja.wikipedia.org/wiki/JIS_X_0401
0275nobodyさん2009/04/27(月) 14:02:39ID:???
それが普通じゃないの?
っていうかkeyは要らないんじゃない?
0276nobodyさん2009/04/27(月) 16:41:20ID:???
paginate で 「stampが 0 より上のものを優先。でその中でも modified が新しい順に表示したい」
ってとき
$this->paginate = array(
'limit' => 10,
'page' => 1
);

$this->paginate['order']['modified'] = 'desc';
$this->paginate['order']['stamp > '] = 0;

じゃうまく動かない。
誰かうまい方法ご存じですか?
0277nobodyさん2009/04/27(月) 16:54:40ID:???
不等号じゃなしに普通にstampって書いて降順にすればいいんでは?
0278nobodyさん2009/04/27(月) 18:18:49ID:???
>>277
ありがとう!できました!
0279nobodyさん2009/04/28(火) 12:31:08ID:LqIduRrQ
すみません、バカな私に是非ご教授をお願いします。
画像ファイルアップロード処理のfileタイプで困ってます。

入力画面(ファイル選択など)→確認画面→登録処理
という画面遷移です。

画像ファイル選択の入力時のフォームは
$this->input( Hoge.img1,array( 'type' => 'file' ) )
とし、
確認画面では、Hoge.img1の下にnameやtypeなどの属性が自動で設定されています。

確認画面のアクションで、アップした画像を適当なディレクトリへコピーし
一時表示用にそのパスをsave_nameとして新たに属性として設定させています。
さらに登録処理へ渡すために、
$form->input( Hoge.img1,array( 'type' => 'hidden' ) )
としているのですが、
画像の属性がこれでは登録処理へ渡せません。
textタイプなどはこの書き方で、そのまま登録処理へ渡せました。

画像ファイル各属性を、
$form->input( Hoge.img1.name,array( 'type' => 'hidden' ) )
このようにそれぞれ設定してやれば渡せます。

ただ、新たに設定したsave_nameだけは、
$form->input( Hoge.img1.save_name,array( 'type' => 'hidden' ) )
これでは渡すことができません。

画像ファイルの属性を、確認画面を挟んでから登録処理へ渡すのに、
なにか上手い方法はありませんでしょうか?

乱筆、乱文すみませんです。
0280nobodyさん2009/04/29(水) 10:22:51ID:???
>>269
セッション使うと、別windowで立ち上げたときに変な挙動になるんだよね。
できればGETの引数でやりたいんだけど、ググった限りだとセッション使う方法しかみつからなかったんで。
0281nobodyさん2009/04/29(水) 13:28:28ID:???
>>280
passedArgs でググってみ
0282nobodyさん2009/05/01(金) 20:45:13ID:???
PEARまったく知らなくても
cakephp使う上で、問題無い?

それとも、途中でPEARの知識が必要になる?
0283nobodyさん2009/05/01(金) 21:59:24ID:???
>>282
PEAR使わずにcakephpだけでOKだよ。
途中で「やっぱりPEAR必要だった。」って言うことはないと思う。
ネットに公開されている便利部品を使って実現。という事は
多々発生すると思うよ。
0284nobodyさん2009/05/01(金) 23:35:11ID:???
それってさ、
「cakephp用の部品です」
って形で公開されてるの?
0285nobodyさん2009/05/01(金) 23:46:22ID:???
>>284
そういうのもある。
0286nobodyさん2009/05/02(土) 00:25:41ID:???
cakeってmysql必須なの...?
0287nobodyさん2009/05/02(土) 00:42:57ID:???
>>286
いいや
0288nobodyさん2009/05/02(土) 01:25:28ID:???
でもMySQLのパスワードとかデーターベース名を
セットアップしないと動かなかったよ?
0289nobodyさん2009/05/02(土) 01:26:14ID:???
これちょっとやってみたけど、
モデルとビューとコントローラーの
3つを書かないとだめなんだね?
0290nobodyさん2009/05/02(土) 01:30:44ID:???
だから
$uses = array();
でモデルいらねーっての
0291nobodyさん2009/05/02(土) 01:41:25ID:???
<?php foreach ($tasks as $task) { ?>
<tr>
<td><?php echo h($task['Task']['id']) ?></td>
<td><?php echo h($task['Task']['content']) ?></td>
<td><?php echo h($task['Task']['status']) ?></td>
<td><?php echo h($task['Task']['created']) ?></td>
</tr>
<?php } ?>

----------------------------------
↑こういう使い方を見たんだが、
これって全然OKなの?
0292nobodyさん2009/05/02(土) 01:49:13ID:???
逆になんで駄目だと思ったの?
0293nobodyさん2009/05/02(土) 07:48:48ID:???
ふむmd5に脆弱性があるんだね
0294nobodyさん2009/05/02(土) 08:10:57ID:???
>>291
入門書:CakePHPによるWebアプリケーション開発 \2,940 嫁
>>286 p.41, 44
>>289 >>290 p.44
>>291 p.41, 47
0295nobodyさん2009/05/02(土) 10:38:50ID:???
ここも一読して質問してくれ
http://book.cakephp.org/ja/
0296nobodyさん2009/05/02(土) 12:30:44ID:???
ビデオで学ぶCakePHP入門もある
ttp://d.hatena.ne.jp/i_ogi/20090418/1240044385
0297nobodyさん2009/05/02(土) 13:33:45ID:???
http_socketのcookieのところが複数クッキーに対応してないんですね。
あとpage:1とかの:が予約語なんでhtmlチェックとかしたら
怒られるんですよね。

コアライブラリいじるとアップデートの時変更忘れそうだから治して欲しい門です><
0298nobodyさん2009/05/02(土) 21:13:12ID:???
cakeをはじめてやる人に
向いているわかりやすい入門書教えてください
0299nobodyさん2009/05/02(土) 21:57:58ID:???
http://www.amazon.co.jp/dp/4798022225/

これってなんで
アマゾンでC++のカテゴリに入れられてるの?
0300nobodyさん2009/05/02(土) 22:38:49ID:???
C++   → CPP
CakePHP → CPP
0301nobodyさん2009/05/02(土) 22:55:51ID:???
>>300
それってマジなの?
0302nobodyさん2009/05/03(日) 00:41:38ID:???
本屋はシステムに詳しい訳じゃないから分類の間違いは良くあるぜ
0303nobodyさん2009/05/03(日) 08:02:54ID:???
>>298
あくまでも個人的意見として

CakePHPによるWebアプリケーション開発
http://www.amazon.co.jp/dp/4798022225/
基本的な事から丁寧に解説。コツコツ型にお勧め。

CakePHP徹底入門
http://www.amazon.co.jp/dp/479811717X/
Cakeのコード自働生成機能(bake)を使って解説。短時間で動かせる様になりたい人。
動かしながら理解していくのを好む方にお勧め。

CakePHP1.1(旧バージョン)で解説されているので避けた方が良い入門書
CakePHPガイドブック
http://www.amazon.co.jp/dp/4839924317/
Fast CakePHP (LLフレームワークBOOKS)
http://www.amazon.co.jp/dp/4774133418/
0304nobodyさん2009/05/03(日) 19:51:13ID:???
質問です。
CakePHP と Ruby on Rails を二股で勉強しています。
言語の仕様上仕方ないのかもしれませんが、
Rails と比べて CakePHP は括弧やシングルクォートが多くなって
疲れる気がします。
けれど、Rails よりも動作環境の敷居が低い CakePHP も魅力です。
煽りじゃなくて、CakePHP と Rails どちらにしようか迷っている人間に、
「CakePHP はこんな所が素敵だよ」と背中を押す一言を頂けたら幸いです。
0305nobodyさん2009/05/03(日) 19:51:54ID:???
>>304
質問というか相談ですね。失礼しました。
0306nobodyさん2009/05/03(日) 21:55:39ID:???
RoR →サーバー代毎月5,000円必要
cake → 無料のサーバーでも動く
0307nobodyさん2009/05/03(日) 21:56:34ID:???
http://www.google.co.jp/trends?q=cakephp%2Cruby+on+rails&ctab=0&geo=jp&date=all&sort=0

あとはこのグラフを見れば一目瞭然
0308nobodyさん2009/05/03(日) 22:29:46ID:???
しかし実際はこっちのグラフの方が参考になる罠
ttp://www.google.co.jp/trends?q=cakephp%2Crails&ctab=0&geo=jp&geor=all&date=all&sort=0
■ このスレッドは過去ログ倉庫に格納されています