【PHP】フレームワーク CakePHP 13ホール目【v2.0】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2011/11/09(水) 01:05:10.60ID:???CakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ
質問するときはCakePHPのバージョンを書きましょう
※他フレームワークとの比較等はスレ違いです
テンプレは>>1-5くらい
■本家
http://www.cakephp.org/
APIドキュメント
http://api.cakephp.org/
the Bakery
http://bakery.cakephp.org/
CakeQs
http://cakeqs.org/
CheatSheet (PDF)
http://cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf
github - cakephp
http://github.com/cakephp
■日本語公式
http://cakephp.jp/
フォーラム
http://cakephp.jp/modules/newbb/
cookbook(マニュアル)
http://book.cakephp.org/ja
前スレ
【PHP】フレームワーク CakePHP 12ホール目【笑】
http://hibari.2ch.net/test/read.cgi/php/1309505626/
0564nobodyさん
2012/02/08(水) 11:00:04.88ID:???0565nobodyさん
2012/02/08(水) 11:28:41.60ID:???0566nobodyさん
2012/02/08(水) 12:08:44.04ID:???0567nobodyさん
2012/02/08(水) 12:11:29.75ID:???0568nobodyさん
2012/02/08(水) 12:14:52.18ID:???0569nobodyさん
2012/02/08(水) 12:15:51.13ID:???0570nobodyさん
2012/02/08(水) 12:18:45.15ID:???0571nobodyさん
2012/02/08(水) 12:19:03.41ID:FLeGKhAC0572nobodyさん
2012/02/08(水) 12:22:28.38ID:???0573nobodyさん
2012/02/08(水) 12:40:57.21ID:???0575nobodyさん
2012/02/08(水) 16:25:40.59ID:???0577nobodyさん
2012/02/08(水) 17:01:40.67ID:???0578nobodyさん
2012/02/08(水) 18:10:15.72ID:???0579572
2012/02/08(水) 18:39:58.51ID:???0581nobodyさん
2012/02/08(水) 21:44:51.18ID:???if you use 12.x, on vendors.
if you use 2.0.x on libs.
0582nobodyさん
2012/02/09(木) 13:37:44.09ID:???○商品A ○商品B
■■■ ■■■
○がラジオボタンで、■が商品の画像だとします。
フォームヘルパーのoptionsに配列で選択肢を指定したら
横並びの入力項目が出来るので、
画像付きのこういった表現が出来ません。
どうすればいいのでしょうか?
0585nobodyさん
2012/02/10(金) 12:20:32.03ID:???pagenatorのhasNextのような関数を、コントローラー内で呼ぶにはどうすれば良いですか?
ぐぐってもビューでヘルパーを呼び出す方法しか出てきません
コントローラー内で、次のページがあるかどうかで分岐する処理が書きたいです
1.3です
0586nobodyさん
2012/02/10(金) 18:01:43.96ID:???cakephp2.0.6 php5.3.6 apache2.2.17
という環境でcakephpをインストールし接続してみたのですが
Missing Method in AppController
Error: The action webroot is not defined in controller AppController
Error: Create AppController::webroot() in file: app\Controller\AppController.php.
このような文がでて接続がうまくいきません。どなたかご教授お願いします。
(cakephp1.3だとちゃんとRelease Notes for CakePHP 1.3.14に表示されます。)
0587nobodyさん
2012/02/10(金) 18:21:21.51ID:???0588nobodyさん
2012/02/10(金) 18:52:31.16ID:???すみません、いろいろとググったのですがみつからず困ってました。
AppControllerにアクションwebrootがみつからない
ファイルapp\Controller\AppController.php作ってwebroot()を作れ
っと言われてると思うのですが、実際に作るとphpでのエラーがでてしまいます。
Fatal error: Class 'AppController' not found
申し訳ありませんが、ヒント頂ければと思います。
0589nobodyさん
2012/02/10(金) 20:19:58.49ID:???app\Controller\AppController.php
には正確にはどう書いた?
とうか、そもそも、どういうディレクトリにインストールして
どこにアクセスしてる?
0590nobodyさん
2012/02/10(金) 20:55:32.66ID:???document rootと、http側のrootが一致してないと見た。
0591nobodyさん
2012/02/10(金) 21:02:16.73ID:???そのあとのエラー的に、>>590の言うとおりパスがおかしいんじゃないかと。
あとhttpd.conf内でmod_rewriteは設定してるよな?
まずはhttpdの設定を見直すよろし。
0592nobodyさん
2012/02/10(金) 21:02:49.14ID:???中には表示されていた
<?php
class AppController extends AppController {
public function webroot() {
}
}
?>←これはなかったので付け足しました
と書きました
ディレクトリはC:\Users\fruit\Desktop\www\sns\cake\2.0\app\Controller\AppController.phpに保存しています
アクセス先はhttp://localhost/php/cake/2.0/app/webroot/index.phpです
http://localhost/php/cake/2.0/でのアクセスだとIndex of /php/cake/2.0/app/webrootになってしまいます。
またapacheには
<Directory "C:\Users\fruit\Desktop\www\php\cake">
AllowOverride All
</Directory>
と記述してあります。
どうでしょうか、よろしくお願い致します。
0594nobodyさん
2012/02/10(金) 21:06:52.99ID:???正確には
ディレクトリはC:\Users\fruit\Desktop\www\php\cake\2.0\app\Controller\AppController.phpに保存しています
でした 。wwwをlocalhostとしています。
0595nobodyさん
2012/02/10(金) 21:13:17.18ID:???php.iniで、それの有無に関しての挙動が変更できる。
現在のPHPのデフォルトは、「閉じタグ ?> が無い事が標準」となってる。
初学者なのは分かるけど、いきなりフレームワークに手に入れるとか愚の骨頂。
どれだけの人数がテストしてると思ってるの?
0597nobodyさん
2012/02/10(金) 21:37:46.65ID:???一通りhttpd.confをみなおし、ルートも確認し
>>595のとおり?>もはずしてみましたがやはり直りませんでした。
どなたかわかりそうな方いましたら、よろしくお願い致します。
0598nobodyさん
2012/02/10(金) 22:18:06.68ID:???ルートを確認したっていうことだけど、
httpd.conのDocumentRootはどう書いてあるの?
0599nobodyさん
2012/02/10(金) 22:22:19.33ID:???DocumentRoot "C:/Users/fruit/Desktop/www"
<Directory "C:/Users/fruit/Desktop/www">
このように設定してあります。
0600nobodyさん
2012/02/10(金) 22:31:07.86ID:???アクセス権限とか切り分けが面倒になるから、俺はドライブルートから
浅い所にファイルを置くんだが。
0601nobodyさん
2012/02/10(金) 22:40:32.26ID:???俺はMac使ってるけど
cake本体は /Library/ の中、appは /Users/俺/ウェブ開発/○○アプリ って感じ。
jquery関係とかよく使うアセットはcake本体側に入れとけば複数app作るの楽だし
0602nobodyさん
2012/02/10(金) 23:53:22.09ID:???・http.confにOptions FollowSymLinksの指定がしてあるか
・そもそもmod_rewriteはLoad Moduleされてるのか
・apacheのエラーログ確認
・各.htaccessにrewrite baseの設定が要るかも?
0605nobodyさん
2012/02/11(土) 02:53:33.10ID:???ヘルパーはApp::importで読み込んでnewすれば使えるけど、
わざわざ呼ばんでも
debug($this->paginate)とかdebug($this->params)とかやったらなんかヒントあるんじゃね?
0606nobodyさん
2012/02/11(土) 08:51:11.48ID:???Options FollowSymLinksは記述してためしてもAppController.phpのエラーが返ってきます。
Load Moduleはしてあります
apacheのエラーは
[Sat Feb 11 08:43:04 2012] [error] [client 127.0.0.1] PHP Fatal error: Class 'AppController' not found in C:\\Users\\fruit\\Desktop\\www\\php\\cake\\2.0\\app\\Controller\\AppController.php on line 2
となっていてブラウザ上でみるphpエラーと同様になってます
rewrite baseを設定してみたらcssが読み込まれなくなりました
0607nobodyさん
2012/02/11(土) 13:31:36.87ID:???携帯からなんで詳しい設定名わからんけど、
index.phpをインデクスファイルとして読み込む設定になってないんじゃないの
0608nobodyさん
2012/02/13(月) 23:59:06.34ID:???$paginator->sort('投稿数', 'Post.total_num')
みたいにビューに書いてもソートされません。
0609608
2012/02/14(火) 00:16:33.57ID:???今まで使い方を理解してませんでしたが、
$this->User->virtualFields = array(
'total_num' => 'COUNT(Post.user_id)'
);
みたいにすればいいんですね。
0610nobodyさん
2012/02/14(火) 03:08:29.79ID:???どちらを優先的にすべきですか?
RORのほうはサーバーの構築からが必要だったりでお気軽感覚では出来ず導入のための敷居は高い気がします。
しかし、Deviseというプラグインがあったりするので、いちいちユーザー登録や、ユーザー管理、ログイン管理の機能を作らなくても済んだりします。
一方でCakePHPなら未だに情報交換が活発になされてますし、あまり環境にこだわらずフォルダごと、ぶちこめば大抵うごいてくれます(データベース設定やパーミッション等はありますが)
両方出来る人とかに聞きたいのですが、どちらがオススメですか?
0611nobodyさん
2012/02/14(火) 03:20:43.81ID:???0612nobodyさん
2012/02/14(火) 03:29:17.24ID:???0613nobodyさん
2012/02/14(火) 03:51:01.11ID:???0615nobodyさん
2012/02/14(火) 15:53:13.31ID:XKQCpFOZセッションを使用して、異なるコントローラー間でデータの受け渡しを行いたいのですができません。
使用方法が間違っているのでしょうか?
異なるコントローラー間で以下の2行を実行しています。
$this->Session->write('id','hogehoge');
$hoge = $this->Session->read('id');
core.phpのセッション設定は以下の設定です。
Configure::write('Session', array(
'defaults' => 'php'
));
0616nobodyさん
2012/02/14(火) 17:04:00.93ID:???上の一行をあるコントローラでやって、
下の一行を違うコントローラでやってると言う意味だよね?
まず下の一行を実行する前に
if($this->Session->check('id))
でセッション変数自体が存在しているか確認するのはやってみた?
0617615
2012/02/14(火) 17:37:28.16ID:???返信ありがとうございます。
windows環境で作成をしてて、なぜかPCを再起動したら取得できましたm(_ _)m ナゾです・・
0619nobodyさん
2012/02/17(金) 14:11:59.26ID:???別名を付けたファイル名からアクセスしたい場合、
ファイル内に $_GET['url'] = '/user/index' みたいに書けば良いだけですかね?
表向きはピュアPHPみたいなURLにしたいです。
0620nobodyさん
2012/02/17(金) 14:33:54.66ID:???意味が分からん。
foobar_controller.php
foobar_index.ctp
foobar_alt_index.ctp
URLとファイル名は必ずしも強固に1体1対応で無くてもいいんだよ。
render('ctpファイル名')でいくらでも描画先変えられるし、redirectでもいい。
特定のURLのみ、URLのファイル名とは異なるctpファイルを読み込みたい場合は、
controller側でfunction URL名(ファイル名)を作ればいくらでも好きなファイルをrender出来る。
0621nobodyさん
2012/02/17(金) 14:47:34.93ID:???そうじゃなくて、基本的にcakeにアクセスするのって
webtoor内のindex.phpと.htaccessを元にしてるじゃないですか?
それを通さないで、単体のファイルで動かしたいって事です。
0622nobodyさん
2012/02/17(金) 14:50:28.33ID:???0624nobodyさん
2012/02/17(金) 22:18:17.74ID:/liskI/Yあなたはないかもしれないが、こちらは一杯あるよ
0625nobodyさん
2012/02/17(金) 23:19:48.84ID:???たまたまだろうけど
0626nobodyさん
2012/02/17(金) 23:35:34.41ID:???痒いところに手が届くログイン管理プラグインが無いのが痛い
0627nobodyさん
2012/02/18(土) 00:41:23.45ID:???0628nobodyさん
2012/02/18(土) 07:14:15.10ID:???webroot直下に置いたhtmlファイルとか、好き勝手に動かせるよ。
webroot/phpmyadmin
とかを本番機で動かしてるし。
ここでhtmlなり、ctpなり、好きなファイル置けばいいのでは?
0629nobodyさん
2012/02/18(土) 11:05:37.21ID:???0630nobodyさん
2012/02/18(土) 11:52:58.83ID:???楽しさを求める奴って一定の割合でいるけど何なの?世間ナメてるの?
0631nobodyさん
2012/02/18(土) 14:10:48.45ID:???0633nobodyさん
2012/02/18(土) 19:32:45.39ID:???0634nobodyさん
2012/02/18(土) 19:52:11.24ID:???戦闘機とは勝手が違うかもしれんが、職人であり整備士でもあるウェブ開発者が『メンテつまらない』なんて、間違っても言えない言葉だと思うがな。
作品に対する愛着と言うか、親心はないのかと思う。
0635nobodyさん
2012/02/18(土) 19:54:15.84ID:???愛があってもつまらんものはつまらん
0636nobodyさん
2012/02/18(土) 19:54:39.40ID:???0637nobodyさん
2012/02/18(土) 20:03:42.12ID:???「自分の子供は糞までかわいい」って話じゃね?
子供の世話とバグ取りや保守作業って同じ感覚でやってたわ
むろんどっちも楽しい。
しかもメンテっつーか仕事なら、やっただけ対価までもらえるんだぞ?
毎日wktkしとるわw
0638nobodyさん
2012/02/18(土) 22:23:06.59ID:???他人が作ったものの尻拭いはごめんだ
0639nobodyさん
2012/02/18(土) 23:12:25.71ID:???ビルだって自動車だってそうだろ。
仕事として受けたならメンテのプロとしてやらないと。面白くないべ。
0640nobodyさん
2012/02/19(日) 00:03:12.80ID:???楽しくいないのは店長や客が嫌な奴だったとか
人間関係の面がほとんどだろ。
0641nobodyさん
2012/02/19(日) 00:21:41.04ID:???俺は仕事は楽しくなくちゃ嫌だわ。
0642sage
2012/02/19(日) 00:25:24.87ID:???0643nobodyさん
2012/02/19(日) 09:24:53.81ID:???ブラウザの「戻る」ボタンを押して前の画面に戻る際に、
必ずサーバーに問い合わせるようにしたいのですが、
キャッシュの設定を「session_cache_limiter('nocache')」にしていても
「ページの有効期限切れ」が表示される場合があります。
(具体的には、画面遷移時に一度入力チェックでエラーを表示した後、
次画面に遷移し、ブラウザの戻るボタンを押した場合。)
「ページの有効期限切れ」が表示されず、前画面に戻るには
どのような対応が必要でしょうか。
(ページの有効期限切れは、具体的に何を見て判定しているのでしょうか)
0644nobodyさん
2012/02/19(日) 14:32:18.81ID:???0645nobodyさん
2012/02/19(日) 22:02:58.12ID:???そういうことだろうな。
仕事でも趣味でも、開発すること自体楽しけりゃ不平不満なんて出ないどころか毎日Happyさね。
>>643
一般的に考えれば、フォーム(hiddenも含む)データじゃね?
単純な話で、なんかページ同士のパラメータの受け渡しに失敗してるんじゃないかな?
0647nobodyさん
2012/02/20(月) 13:39:28.34ID:???例えばサイトのほとんどがHTMLなんだけど、
お問い合わせフォームとか新着情報の表示とかシステム化が
必要な箇所ってありますよね?
0648nobodyさん
2012/02/20(月) 16:42:43.00ID:???おかげで数時間ムダにしたわ…
0649nobodyさん
2012/02/20(月) 17:31:52.64ID:???値セットしてないカラムも全部NULLになっちゃって。
0650nobodyさん
2012/02/20(月) 18:44:49.57ID:???0651nobodyさん
2012/02/20(月) 19:27:11.23ID:???どうもです。ぐぐったら解説も出てきました。
http://d.hatena.ne.jp/cakephper/20091221/1261385134
$data初期化してるのにヘンテコな値が入るので???になってたんですが、
よく考えたらモデルの方も初期化せなあかんのですね。
0652nobodyさん
2012/02/20(月) 19:44:33.38ID:???COUNT(column)とかで、面倒な挙動が多い・
0653nobodyさん
2012/02/20(月) 20:16:24.86ID:???実は既にあすこの会員でして・・・
しかし、NULLを避けたいのにcakePHPが勝手に挿入するのを避けられないというー-;
for ($x = 0; $x < 100; $x++) {
$data = null;
$this->cookie->create(false);
$data = $this->cookie->findById($x);
if ($data == FALSE) {
continue;
}
レコードが存在しない時は処理をスキップしたいんですけど、
比較式おかしいですかね?
0654nobodyさん
2012/02/21(火) 00:21:24.73ID:???0655nobodyさん
2012/02/21(火) 13:06:27.12ID:???RCの後に数字がないってことは、
次がもう正規リリースなのかな?
0656nobodyさん
2012/02/21(火) 14:08:16.13ID:???0657nobodyさん
2012/02/21(火) 19:27:57.09ID:???0658nobodyさん
2012/02/21(火) 21:15:24.57ID:???できれば最新のもの使ったほうがウマイのでしょか?
0659nobodyさん
2012/02/21(火) 22:01:38.94ID:???新規で作るのなら2系で作っておいた方がいいと思うよ
1.3で作ってると下手に1.3のクセがつくだろうし
今勉強中ならRCも出たことだし、サービスリリースまでにはstable出るだろうから2.1使っちゃっていいんじゃない
0661nobodyさん
2012/02/21(火) 22:26:00.87ID:???そうですかー・・
http://book.cakephp.org/2.0/ja/appendices/2-0-migration-guide.html
変更点相当あるみたいですね。
後から変えたくなっても不便だし、
1.3じゃなきゃいけないような理由もないし、
早いとこ乗り換えたほうが良さそうですね。
2.1落としてきます。
0662nobodyさん
2012/02/21(火) 22:28:23.70ID:???俺の見立てでは後1年は情報や書籍は揃わないと思う
0664659
2012/02/21(火) 23:19:39.41ID:???今までのプロジェクトは全部1.xで作ってきたけど、最近全部1.3.14に上げた
とりあえずそれらは2系に上げる予定無し(1.3から2.0への全面書き換えはだるいのでしばらくは放置すると思う)
2.0のstableが出てからは全部2.0で作ってる
>>659にも書いたけど、RC出たからもう2.1に移ろうかと思ってる
個人的には複雑なことをやってないせいもあるのか2.0の情報が少ないという感じはない
昔からcakeは「公式ドキュメント読んで分からなかったらソースを読め」ってスタンスだしね
ああ、でも公式ドキュメントはまだ日本語ないから英語が全く出来ないとちょっときついか
■ このスレッドは過去ログ倉庫に格納されています