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

【PHP】フレームワーク CakePHP 16ホール目【v2.4】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2013/09/09(月) 01:56:10.19ID:m9OPw/HT
CakePHPは、Ruby on Railsの概念の多くを取り入れた、Rails流の高速開発とPHPの機動性を兼ね備えたフレームワークです
CakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ
質問するときはCakePHPのバージョンを書きましょう

※他フレームワークとの比較等はスレ違いです

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

■日本語公式
http://cakephp.jp/
フォーラム
http://cakephp.jp/modules/newbb/
cookbook(マニュアル)
[2.x] http://book.cakephp.org/2.0/ja/index.html
[1.3] http://book.cakephp.org/ja

http://kohada.2ch.net/test/read.cgi/php/1354593996/l50
0357nobodyさん2013/11/06(水) 22:29:20.54ID:???
>>356
Authコンポーネントを良く調べろ。
0358nobodyさん2013/11/06(水) 22:32:14.86ID:???
>>357
'loginAction' => Array('controller' => 'tops', 'action' => 'index'),

色々と試したみたのですが、これでOKですか?
0359nobodyさん2013/11/06(水) 22:39:31.12ID:???
>>358
http://book.cakephp.org/2.0/ja/tutorials-and-examples/blog-auth-example/auth.html
0360nobodyさん2013/11/07(木) 00:07:19.08ID:???
Google Cromeで指定した文字列をクリップボードに
コピーするプログラムを作っています。

$('#id_hoge' ).click( function()
{
var str_text = "あいうえお";
var copyArea = $("<textarea/>");
copyArea.text(str_text);
$("body").append(copyArea);
copyArea.select();
document.execCommand("copy");
copyArea.remove();
});


"あいうえお" がクリップボードにコピーされると思ってたのですが
なぜかされません。cromeでは使えないのでしょうか?
0361nobodyさん2013/11/07(木) 03:12:22.57ID:???
プラグインの日本語情報が異常に少ないんだよね
これじゃなかなか広まらないな
0362nobodyさん2013/11/07(木) 14:17:00.21ID:???
広まらないっていうか、これからどんどん情報減ると思うよ。
自分で調べて情報公開したりするような開発者は、
もうCakePHPなんて飽きてるだろうし。
今は、普通に使えるようになってる人が、普通に仕事をこなすのに使ってる感じじゃね。
書籍も一時期は沢山出てたけどいまはそうでもないしな。
0363nobodyさん2013/11/07(木) 14:34:27.14ID:???
猫も杓子もcakephpの時代が異常だっただけ
今はいいフレームワークがいっぱいあるし
あえてcakephpを選ぶ理由がないからね
0364nobodyさん2013/11/07(木) 14:44:14.56ID:cHcjC9vh
FWはもう、cakePHPに統一しようぜ。
0365nobodyさん2013/11/07(木) 14:52:19.69ID:???
統一するとしてもcakephpだけはやめて
codeigniter, fuelphp, laravel, yiiのどれかで
0366nobodyさん2013/11/07(木) 14:52:21.96ID:???
cakephpは日本が異常だっただけよ
今もオフショア先では大人気
0367nobodyさん2013/11/07(木) 14:55:55.60ID:???
>>365
fuelphpはpsr-0に対応しなかったこととかいろいろあって人気つかないな
codeigniter、laravel、yiiは世界では人気だけど日本だと微妙
0368nobodyさん2013/11/07(木) 15:04:27.70ID:???
http://www.techempower.com/benchmarks/#section=data-r7&;amp;hw=i7&amp;test=json

cakeぼろぼろだ
昔のライバルsymfonyには辛うじて勝利
0369nobodyさん2013/11/07(木) 16:27:36.49ID:urHtWp+p
FWといよりプログラマのスキルによるんじゃねーの。
レスポンスとかさぁ。
0370nobodyさん2013/11/07(木) 18:19:09.69ID:???
codeigniterとか作りが前時代的過ぎてなぁ・・・
その4つの中ならlaravelがいいな
0371nobodyさん2013/11/07(木) 18:25:45.15ID:???
Sinatra風のルーティングは見やすいんだが
PHPとは相性が悪い
リクエストの度にパスの数だけClosureオブジェクトを作ってると考えたらぞっとする
0372nobodyさん2013/11/07(木) 20:37:01.47ID:???
Sinatra風ルーティングは、マイクロFW系向きじゃないかな
0373nobodyさん2013/11/07(木) 20:55:50.09ID:TVGLaC0N
悪い事は言わない

Yiiを使える、進めるヤツはせめてToeic 800点位とってから使おうな。
英語も出来ないのに間隔で変な名前をあちこちに量産されたら迷惑
0374nobodyさん2013/11/07(木) 23:10:35.42ID:???
>>373
なんでYii限定?
0375nobodyさん2013/11/07(木) 23:33:39.73ID:???
TOELCといえばYii
0376nobodyさん2013/11/07(木) 23:35:41.14ID:???
わけがわからないよ
0377nobodyさん2013/11/08(金) 02:55:52.80ID:???
漢字もちゃんと使えてない人に言われてもなー
0378nobodyさん2013/11/08(金) 19:07:09.93ID:???
話題のbakeを試してみたんだけど、命名規則通りにテーブルを作って
cake bake all モデル名 とやったんだけど、
Error: Table ないテーブル名 for model ないモデル名 was not found in datasource default.
とエラー。生成されたモデルを見てみると、勝手に存在しないモデルの$belongsToが書かれてた。
これは何?なんでそうなるのでしょう。
0379nobodyさん2013/11/08(金) 19:51:29.62ID:???
>>378
テーブル名書けよ
0380nobodyさん2013/11/08(金) 22:22:57.25ID:???
テーブル名だけじゃなくてスキーマ全部と、
DATABASE_CONFIG::$default['prefix'] の値も忘れずに
0381nobodyさん2013/11/09(土) 01:13:36.00ID:???
IISにそのままCake載せただけじゃ動かないですよね?
どうすりゃいいんですか?
0382nobodyさん2013/11/09(土) 02:28:19.11ID:???
IISなんて知らんがな
0383nobodyさん2013/11/09(土) 11:02:53.97ID:???
>>381
チュートリアルに書いてるじゃん
0384nobodyさん2013/11/09(土) 22:59:18.49ID:???
え、IISかい。Apache使わないの?
0385nobodyさん2013/11/10(日) 08:55:33.38ID:0LvUSNX1
すみません教えて頂ければ幸いです
CakePHP2.3でフォームで確認画面を制作しているのですがバリデーションが効きません
自分で調べていったんモデルにはセットするとの事で
$this->Model->set($this->request->data);
if($this->Model->validates()){成功の時の処理}
上記の様にしているのですがエラー等も全く出ずただバリデーションが効いていない形です
よろしければどなたか教えて頂けませんか
0386nobodyさん2013/11/10(日) 11:47:08.36ID:???
どんなコードを書いているかも分からないのに答えようがない
0387nobodyさん2013/11/10(日) 19:22:06.34ID:???
より高度なRoRに引っ越しすることをお勧めしよう
Railsスレで質問すれば俺が答えてあげよう
その代わり最大限の敬意を示し、パソコンの前で土下座したまえ
そお誠意が俺まで伝わってきたら答えてあげる

多くの有力企業が採用するRoRにようこそ
0388nobodyさん2013/11/10(日) 20:12:12.51ID:???
今すぐ辞めて欲しい、「Ruby on Rails勉強してます」「CakePHP勉強してます」
http://blog.sumyapp.com/2013/07/no-recommend-rails/
0389nobodyさん2013/11/10(日) 20:28:10.59ID:???
>>388
書いてある内容がイマイチわからん。
0390nobodyさん2013/11/10(日) 21:34:39.51ID:???
人の作ったプログラム触るのcakephpでも嫌なんだけど、俺だけ?
できれば一から作りたいと思ってしまう。
0391nobodyさん2013/11/10(日) 22:07:59.18ID:???
>>389
CakePHPやる前にPHPはちゃんと理解してんだろうな?てことじゃないかな
0392nobodyさん2013/11/10(日) 23:43:46.77ID:???
というか勉強しなきゃ使えないようなものか?て気がする
0393nobodyさん2013/11/11(月) 01:04:57.32ID:???
cakephpやりながらphp覚えてもいいと思うね
0394nobodyさん2013/11/11(月) 02:24:03.68ID:???
ここはやはりだめだ、Stackoverflowで聞いてくる
0395nobodyさん2013/11/11(月) 06:16:43.22ID:???
それが2chというものだよ
0396nobodyさん2013/11/11(月) 11:04:10.26ID:???
捨て台詞残さずにさっさと消えろよ
0397nobodyさん2013/11/11(月) 12:40:31.09ID:???
>>394
解決していないのはどの質問だろうか?
0398nobodyさん2013/11/12(火) 00:26:13.49ID:O3AZzxQU
1つだけのチェックボックスをcakePHPヘルパーを使ってレンダリングしようとしています。
その為に次のコードを記述し
echo $this->Form->input( 'totaling' , array(
'type' => 'checkbox',
'label' => false,
)); ・・・�@

実行すると

<div class="input checkbox">
<input type="hidden" name="data[User][totaling]" id="UserTotaling_" value="0">
<input type="checkbox" name="data[User][totaling]" value="1" id="UserTotaling">
</div>

こんなコードが生成されてしまいます。

本当は次の様なタグが生成される事を想定しています。
�@のコードの何処に問題があるのでしょうか?

<input type="checkbox" name="data[User][totaling]" checked="checked" id="UserTotaling">
0399nobodyさん2013/11/12(火) 00:56:26.23ID:???
ヘルパーでタグ生成とかやめてほしいわ。
調べてみたけど、Railsもそうなんだろ?

HTMLはウェブデザイナーのもの
だからプログラミング要素を極限まで減らすべき。
そういった考えで作られた
フレームワーク(テンプレートエンジン)って
無いものかねぇ。

でも低機能なフレームワークを求めてるんじゃないんだ。
こういうinputみたいなものはそのままHTMLでかけて
面倒な部分を改善できるそんなフレームワーク
0400nobodyさん2013/11/12(火) 01:00:45.10ID:???
あぁ、ぐちっちゃった。

>>398
その質問の答はCakePHP使ってないんで知らないけど、
なんでそんなコードが出力されるか知ってる?

それはチェックボックスは、
チェックしたらdata[User][totaling]=1が送られてくるけど、
チェックしなかった時data[User][totaling]=0ではなく、
なにも送られてこないんだよ。最終行のコードではね。

それの対策が 、「こんなコード」なわけ。
ここまで言えば、どうすればいいかわかるんじゃない?

そう、チェックしない場合に値を送る機能を
OFFにする設定があるはずだ。
0401nobodyさん2013/11/12(火) 02:01:30.93ID:???
>>399
formヘルパーは使った方がいいと思うよ。htmlヘルパーは使わない方がいいかもだけど。
0402nobodyさん2013/11/12(火) 02:22:03.84ID:???
同じくFormHelperやHtmlHelper嫌い。
でも、使わないとハマったり困ることあるから、しぶしぶ使ってる。
0403nobodyさん2013/11/12(火) 08:35:49.27ID:???
>>399
JavaにはほぼHTMLをテンプレートに使えるのあるけどPHPは無理だろうな
0404nobodyさん2013/11/12(火) 09:05:04.81ID:???
bakeのビューのテンプレートで、どこかにかっこいいの落ちてたりしないでしょうか
まあデフォルトのでもOKっちゃOKなんだけど
0405nobodyさん2013/11/12(火) 10:32:08.86ID:ZxfwGxWG
>>400
サンクス。
checkboxをcakePHPのヘルパー使って書くとなぜ hidden が生成されるかの理由が分かりました。
0406nobodyさん2013/11/12(火) 11:37:30.04ID:???
>>403
Javaってどれのことだ?

ZPT系を使えば良いだけだと思うんだが
0407nobodyさん2013/11/12(火) 11:41:20.37ID:???
>>399
もはや、デザイナーとの役割分担のラインは変わってるよ
旧態依存の開発やってれば別だろうが
0408nobodyさん2013/11/12(火) 13:01:19.39ID:???
FormHelper はタグのラッピングが頑固なところはあるな。
クラス名とか触れないところ多いし。
妥協すればとても便利なツールではあるんだが。
0409nobodyさん2013/11/12(火) 13:42:41.13ID:???
Cakeのヘルパーみたいなローカルルール、外注のコーダーに教え込んで使わせる気にはとてもならんから
ヘルパー使ったこと無いわ
0410nobodyさん2013/11/12(火) 16:29:44.75ID:???
>>403
まさかMayaaのことじゃないだろうな?

>>404
探せばBootstrapベースのがあるんじゃね。
0411nobodyさん2013/11/12(火) 17:01:24.88ID:???
>>407
同意。CSSですら、Sass使ってプログラム的な管理するからな。
デザイナーはデザインだけやって、
コーディングはコーダーではなく、プログラマがやる時代になるよ
0412nobodyさん2013/11/12(火) 17:02:26.87ID:GncxjoFv
プログラマ=コーダーだろ
0413nobodyさん2013/11/12(火) 17:14:40.96ID:???
>>412
別の意味での旧態依存の世界の話だ
0414nobodyさん2013/11/12(火) 17:33:48.33ID:???
どう考えてもフレームワークいじる奴とビュー作る奴は分担した方がいい
0415nobodyさん2013/11/12(火) 20:55:59.85ID:jQBt36at
システムだと一通り何でも出来るけど
どうもWEBデザインがうまくないと自分でも思う。

どうやったら見栄えの良いサイトが作れるのかな?

先ずは何から勉強すべきですか?
0416nobodyさん2013/11/12(火) 21:11:38.61ID:???
>>415
ttp://getbootstrap.com/2.3.2/getting-started.html
0417nobodyさん2013/11/12(火) 21:17:21.91ID:???
>>415
Bootstrapとかの上からデザインしてくれるデザイナーがいっぱいいるよ
0418nobodyさん2013/11/12(火) 21:22:11.96ID:jQBt36at
>>416 >>417
うーん。いまいちそのサイトのテンプレートもカッコよくないですね。
何かWEBデザイナの作成する様なスタイリッシュなデザインのサイトを自分で作れる様になりたいんですよね。

よく無料テンプレートサイトとかあるでしょ?
あーいうサイト(デザイン)テンプレートを自分で作れる様になりたいのです。
0419nobodyさん2013/11/12(火) 21:39:26.80ID:???
>>418 PHPと全然関係ないけど、平面構成の本とか読んでみるのはどうかしら
0420nobodyさん2013/11/12(火) 21:48:23.37ID:???
bootstrapのステマが酷い
スルー推奨
0421nobodyさん2013/11/12(火) 22:04:10.58ID:???
ほれ bakeの解説

ttp://hijiriworld.com/web/cakephp-bake/
0422nobodyさん2013/11/12(火) 22:16:50.91ID:???
なんかうまく読み込めないな、そのブログ
無駄にJS使うのやめて欲しいなあ、ただのブログのくせに
0423nobodyさん2013/11/12(火) 22:23:23.76ID:jQBt36at
>>419読んでみます。

>>421
ステマ臭いけど確かに見易い解説サイトですね。
自慢したいのかしら。
0424nobodyさん2013/11/12(火) 22:35:23.88ID:???
読んだけど初歩的なことしか書いてなかった
誰でも知ってることを丁寧に解説しても無価値だな
0425nobodyさん2013/11/12(火) 22:36:21.38ID:???
まずは、グリッドデザインを勉強すればいいよ。
それがある程度できれば、崩してかっこいいデザインが出来るようになる。
0426nobodyさん2013/11/12(火) 23:22:35.94ID:jQBt36at
ログインしていないと閲覧出来ないページにおいて
サーバ再度のバリデーションを作らずに
javascriptだけだと不味いですか?
0427nobodyさん2013/11/12(火) 23:57:17.43ID:SAG0peet
ケースバイケース
0428nobodyさん2013/11/13(水) 00:11:16.12ID:???
>>426 >>427
時間が無いので認証必須のページではJavaScriptだけ
実装していますが、セキュリティー的に問題は無いか若干心配しています。

そもそも認証されていないとサーバにどんな値がポストされようが
そもそもリクエストは遮断される筈なので安心

と考えているのですが・・・
0429nobodyさん2013/11/13(水) 00:21:37.21ID:???
時間がないのに2chで質問は出来るんだな
0430nobodyさん2013/11/13(水) 01:39:40.82ID:???
>>407

え? 役割分担が変わったって
まさか君んところはプログラマが大変な方向に変わったの?
大変だねぇ。間違った方向に進んでしまったね。

>>411
> 同意。CSSですら、Sass使ってプログラム的な管理するからな。
Sass使ったからって、プログラム的な管理をしたらダメだよ。

Sassは、文法的にはSCSSを使う。これでCSSと互換。
計算やifやforなどのプログラム的要素は原則として使わない。
今まで使わないでできたんだから、大半は使わないで出来るはず。

SCSSで使っていいのはネストとextendとplaceholder等
計算できるようになった。ifやループが出来るようになった。わーい。
なんて考えなしに使うから、プログラマしか扱えないようになるんだよ。

自分の仕事を大変にするようなことはするなよ。
他人でも出来るようにしておけば、自分が楽になるぞ。
0431nobodyさん2013/11/13(水) 03:01:46.38ID:???
純粋な善意でもステマと言われるこのご時勢
嫌だね〜
0432nobodyさん2013/11/13(水) 08:46:45.51ID:???
役割分担が変わったのは自社サービスやってるとことかだろ
JavaScriptの問題だろ

受託とかのほとんどは役割分担かわってない
0433nobodyさん2013/11/13(水) 09:09:21.54ID:???
JavaScript?

下手なプログラマが作ると、JavaScriptで
cssいじったりするよね。

そういう話だったら、プログラマが馬鹿なだけってことだけど。

普通はJavaScriptでいじるのはCSSクラス名だけで
原則としてCSSはいじらない。
0434nobodyさん2013/11/13(水) 09:27:26.37ID:???
え?普通はJavascriptでCSSのIDもクラスもいじると思うが。
Googleのコーディング規約とか、そう書いてるよ。
どこの原則なのか気になるなー
0435nobodyさん2013/11/13(水) 09:35:30.68ID:???
受託だろ
0436nobodyさん2013/11/13(水) 09:39:16.24ID:???
お金のあるなし関係あるだろな。
デザイナにCSSもHTMLも任せた方が安上がり。
0437nobodyさん2013/11/13(水) 10:23:29.63ID:???
もっと言えば、デザインもプログラムも扱える奴に
一括で任せたほうが安上がり。
CMS程度ならそれほどデザイン力も求められないしな。
0438nobodyさん2013/11/13(水) 12:38:34.67ID:???
>>433はクラスやIDの操作までは問題にしてないと思う
CSSのプロパティの有無や値をJavaScriptで直接いじるのはよろしくないって意味だろ?
見た目とロジックを両方JavaScriptに任せるのはあまり良い設計じゃない

アニメーションなんかはある程度仕方ないけど
0439nobodyさん2013/11/13(水) 12:57:43.60ID:???
>>438
役割分担のJavaScript部分で噛み付いてるから、もろ問題にしてる
0440nobodyさん2013/11/13(水) 13:27:54.87ID:1DbvJ5ZT
>>437
なかなかいない。どちらかよりだろ。
0441nobodyさん2013/11/13(水) 13:33:26.00ID:???
>>440
いると思うけどな。マッチングサイトとかその手の募集ばかりじゃん。
あんなもん、複数人数でやってたらどうやっても赤だよ
0442nobodyさん2013/11/13(水) 13:39:20.44ID:???
>>440
基本プログラムよりだよ。デザインはテンプレ系で済ませて
これ以上のデザインは後からやってくださいってのが多い

デザイナに今求められてるのって、主なテンプレ系で作られたサイトに
CSS被せてデザインする能力
0443nobodyさん2013/11/13(水) 14:30:30.66ID:???
>>433
こないだやった仕事が、まさにそれをやっててイラっとした。
cssファイルを見ても何処にも書いてないスタイルがあっておかしいなと思ったら
$('#hoge').css()で色々設定してあんの。

あとついでに、cssもcssで、

.mB7{
margin-bottom: 7px !important;
}
.mB10{
margin-bottom: 10px !important;
}

みたいなのが、left top right bottom全部に、数px毎の間隔で定義してあって、すごい困った。
0444nobodyさん2013/11/13(水) 21:38:36.71ID:???
>>442
> デザイナに今求められてるのって、主なテンプレ系で作られたサイトに
> CSS被せてデザインする能力

CSS+HTMLだな。
CSSだけで完結することってないし。

当たり前だけど、HTMLとCSSはウェブデザイナーの仕事
Sassももちろんウェブデザイナーの仕事だよ。
あれはCSSの拡張でしかないんだから。
(Sassの動作環境を作るのぐらいは手伝うけど)

そしてこれも当たり前だけど、JavaScriptはプログラマの仕事。
ただし、JavaScriptでデザインを変えてはいけない。
変えるのはクラス名ぐらい。

テンプレートはHTMLがメインなのでウェブデザイナの仕事
テンプレート変数なんかはプログラマが特殊なタグを
置かせてもらってる的な感覚でやるべき。
ウェブデザイナーもバカじゃないので、教えたルールは理解してくれる。

ウェブデザイナーーが手に負えなくなるぐらいコードが含まれるのであれば
それはプログラマのテンプレートの使い方が悪い。

うーん、上で言ったのと同じことを言ってるだけだなw
0445nobodyさん2013/11/13(水) 21:51:20.71ID:???
受託だろ
0446nobodyさん2013/11/13(水) 21:52:31.94ID:???
>>443
>$('#hoge').css()

こうやるとコメントアウトが楽なんです。

って言われて俺もイラっと来た記憶ある
0447nobodyさん2013/11/13(水) 22:17:37.75ID:???
htaccess使えないサーバでもCake2系を使う方法ってありませんか?
0448nobodyさん2013/11/14(木) 01:37:31.90ID:???
あれ?PATH_INFOを使って動かなかったっけ?
0449nobodyさん2013/11/14(木) 01:57:11.42ID:???
bootstrap3ってどう?
ここだとboostcakeか
0450nobodyさん2013/11/14(木) 02:00:23.48ID:???
BoostCakeになってから、Bootstrapベースでのbake機能がなくなったから使ってないなぁ。
Bootstrap3ベースのスケルトンで良いのがあったら使おうかなって思ってるけど、
積極的には探してない。
0451nobodyさん2013/11/14(木) 02:04:40.49ID:???
ありゃ、それはダメだね
0452nobodyさん2013/11/14(木) 02:53:48.18ID:???
bootstrapはセマンティックじゃないから
使う気がしねぇ。
CSSの文化に逆行してる。
0453nobodyさん2013/11/14(木) 04:30:33.71ID:???
cakephp初心者なんですけど、phpの関数ってcakeでも使えますか?
前のページのURLを取得したいんですけど
…
0454nobodyさん2013/11/14(木) 05:08:41.87ID:???
・・・流石に呆れて閉口だわ
0455nobodyさん2013/11/14(木) 05:10:58.85ID:???
>>453
使えるよ
0456nobodyさん2013/11/14(木) 11:45:51.79ID:???
>>452
そういうのをこだわる人は
Bootstrapで使ってるLessを読み込んで
セマンティックに使うことができますよ

SASSとかでもできるな、変換されたのあるしね
■ このスレッドは過去ログ倉庫に格納されています